^ +1
LOL
brilliant
LOL

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Show posts MenuQuote from: EagerMind on Fri 25/08/2006 06:32:29it will be a free AGS game so there won't be much stopping of production.
You won't get in trouble (at least not at first), you'll just get a letter from a lawyer telling you to stop production. What are the chances of that? Roll the dice ....
Quote from: ProgZmax on Thu 24/08/2006 09:22:19I'll try to make it an original fan game =)
Just bear in mind that gamers are far more critical of a fan game than they are about something original.
Quote from: Arcangel on Sun 07/05/2006 21:58:22hah that one is nicely stolen and adjusted!
Not complete: Need some shadows and maybe other instruments.
#sectionstart repeatedly_execute // DO NOT EDIT OR REMOVE THIS LINE
function repeatedly_execute() {
// ******************** HOW TO MAKE CURSORS CHANGE OVER HOTSPOTS/OBJECTSA/CHARACTERS *******************************
//Using the GetLocationType function you don't have to write a code for every hotspot in the game and you get
//the cursor change also above objects and characters ( tou can modify it to change only on hotspots or objects,
//change it to TALK when above characters etc)
//Let's say your cursors are:
//0 WALK
//1 LOOK
//2 USE
//3 TALK
//4 TAKE // NOT USED
//5 CHANGED WALK
//6 CHANGED LOOK
//7 CHANGED USE
//8 CHANGED TALK
//9 WAIT
//Just put the following code in the GLOBAL SCRIPT'S REPEATEDLY EXECUTE function
string name;
GetLocationName(mouse.x,mouse.y,name); // Get the name of what's under the cursor
if (StrComp(name,"")==0) SetDefaultCursor(); // if blank ( or hotspot with no name
//'used for CHAR STANDS ON HOTSPOT') do nothing
else {
if (GetCursorMode()==0) { //if cursor is WALK
if (GetLocationType(mouse.x,mouse.y)>0) SetMouseCursor(1); // change cursor to CHANGED WALK
else SetDefaultCursor(); } // change back to WALK
}
//Verb Coin
if (IsGUIOn(2) == 0) { //is the GUI up?
if (clicked == 1) { //we check if someone clicked..
if (IsButtonDown(LEFT) == 0) { //this executes if the button is released
if (timer < 7) {
timer=0; //reset the timer
clicked=0; //stop that checking
ProcessClick(mousex,mousey,0);
//if the button isn't held more than 7, you'll
//walk to the destination mousex,mousey...
}
}
if (IsButtonDown(LEFT) == 1) timer++; //While it's held, timer is increasing
if (timer >= 7)
{ //when you've held it for 7, the GUI pops
clicked=0; //guess what..
timer=0; //and this?
if ((GetLocationType (mouse.x, mouse.y) != 0) || (GetInvAt (mouse.x, mouse.y) != -1))
{
SetGUIPosition(2,(guix - 6),(guiy - 20)); //selfexplanatory? Oh, our GUI is numero 2.
InterfaceOn(2); //turn the GUI on
}
else { //clicked 'nowhere', so...
clicked=0; // stop checking
timer=0; //reset timer
}
}
}
}
else { //what will be checked when the GUI is infact on
clicked=0; //guess what..
timer=0; //and this?
if (IsButtonDown(LEFT) == 0)
{ //what will happen if you release da button?
if (GetGUIAt(mouse.x,mouse.y) == 2)
{
//this function checks if the cursor
//is over an GUI
int whatbutton;
whatbutton = GetGUIObjectAt(mouse.x,mouse.y);
InterfaceOff(2); //we'll turn the interface off
Wait(1); //To make sure that the GUI is gone
if (whatbutton > -1) ProcessClick(mousex,mousey,whatbutton+1);
//This is the great part. First we check which button. Then, since
//the buttons is set in the default cursor modes values subracted
//by 1, we'll add one and we'll get the appropriate cursor mode.
//Since GetGUIObjectAt() returns -1 if it's not over an button, it
//would execute in walkmode if you're still inside the GUI-area when
//releasing it. So first we make sure that you released on
//a button, ie. that the int whatbutton is bigger than -1
clicked=0; //guess what..
timer=0; //and this?
}
else InterfaceOff(2); //otherwise, we'll simply turn it off, without s.t. else
clicked=0; //guess what..
timer=0; //and this?
}
}
}
#sectionend repeatedly_execute // DO NOT EDIT OR REMOVE THIS LINE
#sectionstart on_mouse_click // DO NOT EDIT OR REMOVE THIS LINE
function on_mouse_click(int button) {
// called when a mouse button is clicked. button is either LEFT or RIGHT
if (IsGamePaused() == 1) {
// Game is paused, so do nothing (ie. don't allow mouse click)
}
else if (button==RIGHT) {
if (GetCursorMode() == 4) SetCursorMode(0); //checks wether you use an inv.
else { InterfaceOn(3); SetCursorMode(0); SetMouseCursor(0); }
// else InventoryScreen();
//brings up the usual Sierra inventory..
//In the next versions, it'll simulate a CMI-like
//inventory...
}
else if (button==LEFT) { // left-clicking code
if (GetCursorMode() == 4) ProcessClick(mouse.x,mouse.y,4);
else { //these codes check wether you use an inventory or not..
clicked = 1; //we trigger the calculating
mousex = mouse.x; //we set these params to store the exact location of
mousey = mouse.y; //where you clicked...
guix = mousex - 25; //and we set the whereabout's for the GUI... and to
guiy = mousey - 25; //center the GUI, we'll remove 25 (see below)...
if (guix < 0) guix = 0; if (guiy > 149) guiy = 149;
if (guiy < 0) guiy = 0; if (guix > 300) guix = 300;
//Now we'll check these so the verbcoin won't appear to close to
//the edges. If not altered, it may be impossible to select certain
//commands! Why these numbers? Well, the GUI is exactly 50x50, which...
//(NOTATE: the GUI is 50x50, not the graphic. That's why the GUI never will be
//displayed without some space to the screen edge!!!)
//...means that to center it by our clicks, it must be set to the mouse
//coordinates - 25... AND, since AGS first coord. is (0,0), you
//subtract 1 from the values. Also, as all other things, it spawns from
//the top-right corner, so in the top and left side, well simply put it
//close as possible ie. 0. On the other side, well take the largest value
//(which is 319) and subtract 50 (the size of the GUI) and the equalent
//from the bottom (199-50)
}
}
}
#sectionend on_mouse_click // DO NOT EDIT OR REMOVE THIS LINE
By continuing to use this site you agree to the use of cookies. Please visit this page to see exactly how we use these.
Page created in 0.089 seconds with 18 queries.