From: <ave...@us...> - 2007-04-22 17:49:47
|
Revision: 4610 http://gemrb.svn.sourceforge.net/gemrb/?rev=4610&view=rev Author: avenger_teambg Date: 2007-04-22 10:49:48 -0700 (Sun, 22 Apr 2007) Log Message: ----------- fixed an assertion crash Modified Paths: -------------- gemrb/trunk/gemrb/plugins/Core/GameControl.cpp Modified: gemrb/trunk/gemrb/plugins/Core/GameControl.cpp =================================================================== --- gemrb/trunk/gemrb/plugins/Core/GameControl.cpp 2007-04-22 17:33:15 UTC (rev 4609) +++ gemrb/trunk/gemrb/plugins/Core/GameControl.cpp 2007-04-22 17:49:48 UTC (rev 4610) @@ -90,7 +90,6 @@ //maybe we don't even need it //action = GA_DEFAULT | GA_SELECT | GA_NO_DEAD; Changed = true; - spellOrItem = 0; spellCount = 0; user = NULL; lastActorID = 0; @@ -973,7 +972,7 @@ return; //not casting or using an own item } spellCount--; - if (spellOrItem>0) { + if (spellOrItem>=0) { sprintf(Tmp, "NIDSpecial6()"); } else { //using item on target This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ave...@us...> - 2007-09-02 15:56:50
|
Revision: 4795 http://gemrb.svn.sourceforge.net/gemrb/?rev=4795&view=rev Author: avenger_teambg Date: 2007-09-02 08:56:49 -0700 (Sun, 02 Sep 2007) Log Message: ----------- improved compatibility with IE travel regions/trigger cursors Modified Paths: -------------- gemrb/trunk/gemrb/plugins/Core/GameControl.cpp Modified: gemrb/trunk/gemrb/plugins/Core/GameControl.cpp =================================================================== --- gemrb/trunk/gemrb/plugins/Core/GameControl.cpp 2007-09-02 15:52:47 UTC (rev 4794) +++ gemrb/trunk/gemrb/plugins/Core/GameControl.cpp 2007-09-02 15:56:49 UTC (rev 4795) @@ -1393,8 +1393,8 @@ actor->ClearActions(); sprintf( Tmp, "MoveToPoint([%d.%d])", p.x, p.y ); actor->AddAction( GenerateAction( Tmp) ); - //we clicked over a searchmap travel region - if ( Owner->Cursor == IE_CURSOR_TRAVEL ) { + //p is a searchmap travel region + if ( actor->GetCurrentArea()->GetCursor(p) == IE_CURSOR_TRAVEL) { sprintf( Tmp, "NIDSpecial2()" ); actor->AddAction( GenerateAction( Tmp) ); } @@ -1410,8 +1410,8 @@ //of the leader? and destination MoveToPointFormation(actor,p,orient); } - //we clicked over a searchmap travel region - if ( Owner->Cursor == IE_CURSOR_TRAVEL ) { + //p is a searchmap travel region + if ( actor->GetCurrentArea()->GetCursor(p) == IE_CURSOR_TRAVEL) { sprintf( Tmp, "NIDSpecial2()" ); actor->AddAction( GenerateAction( Tmp) ); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ave...@us...> - 2007-12-08 11:05:54
|
Revision: 4886 http://gemrb.svn.sourceforge.net/gemrb/?rev=4886&view=rev Author: avenger_teambg Date: 2007-12-08 03:05:56 -0800 (Sat, 08 Dec 2007) Log Message: ----------- fixed arrow sprite alignment for tracking Modified Paths: -------------- gemrb/trunk/gemrb/plugins/Core/GameControl.cpp Modified: gemrb/trunk/gemrb/plugins/Core/GameControl.cpp =================================================================== --- gemrb/trunk/gemrb/plugins/Core/GameControl.cpp 2007-12-07 22:45:55 UTC (rev 4885) +++ gemrb/trunk/gemrb/plugins/Core/GameControl.cpp 2007-12-08 11:05:56 UTC (rev 4886) @@ -293,7 +293,7 @@ //tmp = core->ArrowSprites[0]->Width; if (p.x>viewport.x+viewport.w-tmp) { - p.x=viewport.x+viewport.w-tmp; + p.x=viewport.x+viewport.w;//-tmp; draw |= D_RIGHT; } @@ -301,7 +301,7 @@ //tmp = core->ArrowSprites[0]->Height; if (p.y>viewport.y+viewport.h-tmp) { - p.y=viewport.y+viewport.h-tmp; + p.y=viewport.y+viewport.h;//-tmp; draw |= D_BOTTOM; } if (arrow_orientations[draw]>=0) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ave...@us...> - 2008-03-15 09:59:12
|
Revision: 5118 http://gemrb.svn.sourceforge.net/gemrb/?rev=5118&view=rev Author: avenger_teambg Date: 2008-03-15 02:59:11 -0700 (Sat, 15 Mar 2008) Log Message: ----------- execute dialog actions before testing new dialog option conditions, this fixes bug #1904858 Modified Paths: -------------- gemrb/trunk/gemrb/plugins/Core/GameControl.cpp Modified: gemrb/trunk/gemrb/plugins/Core/GameControl.cpp =================================================================== --- gemrb/trunk/gemrb/plugins/Core/GameControl.cpp 2008-03-15 01:48:36 UTC (rev 5117) +++ gemrb/trunk/gemrb/plugins/Core/GameControl.cpp 2008-03-15 09:59:11 UTC (rev 5118) @@ -2069,7 +2069,16 @@ ta->SetMinRow( false ); EndDialog(); return; - } + } + + // moved immediate execution of dialog actions here + if (DialogueFlags & DF_FREEZE_SCRIPTS) { + target->ProcessActions(true); + //clear queued actions that remained stacked? + target->ClearActions(); + } + + //displaying dialog for selected option int si = tr->stateIndex; //follow external linkage, if required if (tr->Dialog[0] && strnicmp( tr->Dialog, dlg->ResRef, 8 )) { @@ -2152,11 +2161,13 @@ ta->PadMinRow(); } // is this correct? + /* this was moved upwards before evaluating the triggers if (DialogueFlags & DF_FREEZE_SCRIPTS) { target->ProcessActions(true); //clear queued actions that remained stacked? target->ClearActions(); } + */ } void GameControl::DisplayString(Point &p, const char *Text) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |