From: <ave...@us...> - 2008-09-24 21:24:55
|
Revision: 5356 http://gemrb.svn.sourceforge.net/gemrb/?rev=5356&view=rev Author: avenger_teambg Date: 2008-09-24 21:24:50 +0000 (Wed, 24 Sep 2008) Log Message: ----------- fixed a commented out line Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2008-09-24 21:17:15 UTC (rev 5355) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2008-09-24 21:24:50 UTC (rev 5356) @@ -222,8 +222,8 @@ # FIXME: display all animations GemRB.SetAnimation (Window, Label, "CPEN") - #GemRB.SetAnimation (Window, Button, "CGEAR") - #GemRB.SetButtonBAM (Window, Button, "CDIAL", 0, 0) + GemRB.SetAnimation (Window, Button, "CGEAR") + GemRB.SetButtonBAM (Window, Button, "CDIAL", 0, 0) GemRB.SetButtonState (Window, Button, IE_GUI_BUTTON_ENABLED) GemRB.SetButtonFlags (Window, Button, IE_GUI_BUTTON_PICTURE|IE_GUI_BUTTON_ANIMATED|IE_GUI_BUTTON_NORMAL, OP_SET) GemRB.SetEvent(Window, Button, IE_GUI_BUTTON_ON_PRESS, "GearsClicked") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ave...@us...> - 2009-04-06 21:38:43
|
Revision: 5864 http://gemrb.svn.sourceforge.net/gemrb/?rev=5864&view=rev Author: avenger_teambg Date: 2009-04-06 21:38:40 +0000 (Mon, 06 Apr 2009) Log Message: ----------- fixed switching to attack mode when magic weapons are equipped Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-04-06 21:27:20 UTC (rev 5863) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-04-06 21:38:40 UTC (rev 5864) @@ -307,8 +307,11 @@ def ActionQWeaponPressed (which): pc = GemRB.GameGetFirstSelectedPC () + qs = GemRB.GetEquippedQuickSlot (pc,1) - if GemRB.GetEquippedQuickSlot (pc,1)==which and GemRB.GameControlGetTargetMode() != TARGET_MODE_ATTACK: + #38 is the magic slot + print "QS:",qs + if ((qs==which) or (qs==38)) and GemRB.GameControlGetTargetMode() != TARGET_MODE_ATTACK: GemRB.GameControlSetTargetMode (TARGET_MODE_ATTACK) else: GemRB.GameControlSetTargetMode (TARGET_MODE_NONE) @@ -537,12 +540,13 @@ # redraw selection on change main selection | single selection SelectionChanged () + return def RunSelectionChangeHandler (): if SelectionChangeHandler: SelectionChangeHandler () + return - def OpenPortraitWindow (needcontrols): global PortraitWindow @@ -694,7 +698,6 @@ i = GemRB.GetVar ("PressedPortrait") if DraggedPortrait != None: - print "Swapping ",DraggedPortrait," With ",i+1 GemRB.DragItem (0, -1, "") #this might not work GemRB.SwapPCs (DraggedPortrait, i+1) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ze...@us...> - 2009-04-13 17:48:19
|
Revision: 5874 http://gemrb.svn.sourceforge.net/gemrb/?rev=5874&view=rev Author: zefklop Date: 2009-04-13 17:48:09 +0000 (Mon, 13 Apr 2009) Log Message: ----------- Update <GAMEDAYS> and <HOUR> tokens each time it is needed. Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-04-13 17:37:00 UTC (rev 5873) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-04-13 17:48:09 UTC (rev 5874) @@ -108,7 +108,7 @@ Button.SetState (IE_GUI_BUTTON_ENABLED) Button.SetFlags (IE_GUI_BUTTON_PICTURE|IE_GUI_BUTTON_ANIMATED|IE_GUI_BUTTON_NORMAL, OP_SET) Button.SetEvent(IE_GUI_BUTTON_ON_PRESS, "GearsClicked") - SetGamedaysAndHourToken() + Button.SetEvent(IE_GUI_BUTTON_MOUSE_OVER_BUTTON, "SetGameDaysAndHourToken") Button.SetTooltip(16041) rb = 11 else: @@ -229,7 +229,7 @@ Button.SetState (IE_GUI_BUTTON_ENABLED) Button.SetFlags (IE_GUI_BUTTON_PICTURE|IE_GUI_BUTTON_ANIMATED|IE_GUI_BUTTON_NORMAL, OP_SET) Button.SetEvent(IE_GUI_BUTTON_ON_PRESS, "GearsClicked") - SetGamedaysAndHourToken() + Button.SetEvent(IE_GUI_BUTTON_MOUSE_OVER_BUTTON, "SetGameDaysAndHourToken") Button.SetTooltip(16041) UpdateActionsWindow () return This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ze...@us...> - 2009-04-13 18:09:26
|
Revision: 5875 http://gemrb.svn.sourceforge.net/gemrb/?rev=5875&view=rev Author: zefklop Date: 2009-04-13 18:09:16 +0000 (Mon, 13 Apr 2009) Log Message: ----------- revert previous commit. It did more harm than good... Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-04-13 17:48:09 UTC (rev 5874) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-04-13 18:09:16 UTC (rev 5875) @@ -108,7 +108,7 @@ Button.SetState (IE_GUI_BUTTON_ENABLED) Button.SetFlags (IE_GUI_BUTTON_PICTURE|IE_GUI_BUTTON_ANIMATED|IE_GUI_BUTTON_NORMAL, OP_SET) Button.SetEvent(IE_GUI_BUTTON_ON_PRESS, "GearsClicked") - Button.SetEvent(IE_GUI_BUTTON_MOUSE_OVER_BUTTON, "SetGameDaysAndHourToken") + SetGamedaysAndHourToken() Button.SetTooltip(16041) rb = 11 else: @@ -229,7 +229,7 @@ Button.SetState (IE_GUI_BUTTON_ENABLED) Button.SetFlags (IE_GUI_BUTTON_PICTURE|IE_GUI_BUTTON_ANIMATED|IE_GUI_BUTTON_NORMAL, OP_SET) Button.SetEvent(IE_GUI_BUTTON_ON_PRESS, "GearsClicked") - Button.SetEvent(IE_GUI_BUTTON_MOUSE_OVER_BUTTON, "SetGameDaysAndHourToken") + SetGamedaysAndHourToken() Button.SetTooltip(16041) UpdateActionsWindow () return This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <lyn...@us...> - 2009-05-05 09:14:57
|
Revision: 5936 http://gemrb.svn.sourceforge.net/gemrb/?rev=5936&view=rev Author: lynxlupodian Date: 2009-05-05 09:13:02 +0000 (Tue, 05 May 2009) Log Message: ----------- fixed GetKitIndex equaling pure fighters with barbarians Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-05 08:31:32 UTC (rev 5935) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-05 09:13:02 UTC (rev 5936) @@ -464,18 +464,17 @@ KitIndex = 0 if Kit&0xc000ffff == 0x40000000: - print "Kit value: 0x%04X"%Kit KitIndex = Kit>>16 & 0xfff - #looking for kit by the usability flag - if KitIndex == 0: + # carefully looking for kit by the usability flag + # since the barbarian kit id clashes with the no-kit value + if KitIndex == 0 and Kit != 0x40000000: KitIndex = KitTable.FindValue (6, Kit) if KitIndex == -1: KitIndex = 0 - # needed so barbarians don't override other kits - elif Class != KitTable.GetValue (KitIndex, 7): - print "KitIndex before hack", KitIndex - KitIndex = 0 +# # needed so barbarians don't override other kits +# elif Class != KitTable.GetValue (KitIndex, 7): +# KitIndex = 0 return KitIndex This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <lyn...@us...> - 2009-05-06 18:33:00
|
Revision: 5938 http://gemrb.svn.sourceforge.net/gemrb/?rev=5938&view=rev Author: lynxlupodian Date: 2009-05-06 18:32:29 +0000 (Wed, 06 May 2009) Log Message: ----------- bg2: removed old commented out code from GetKitIndex Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-06 18:31:20 UTC (rev 5937) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-06 18:32:29 UTC (rev 5938) @@ -472,9 +472,6 @@ KitIndex = KitTable.FindValue (6, Kit) if KitIndex == -1: KitIndex = 0 -# # needed so barbarians don't override other kits -# elif Class != KitTable.GetValue (KitIndex, 7): -# KitIndex = 0 return KitIndex This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <lyn...@us...> - 2009-05-15 17:35:58
|
Revision: 5976 http://gemrb.svn.sourceforge.net/gemrb/?rev=5976&view=rev Author: lynxlupodian Date: 2009-05-15 17:35:32 +0000 (Fri, 15 May 2009) Log Message: ----------- bg2: added mattinm's IsDualSwap and IsMultiClassed functions Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-15 17:01:11 UTC (rev 5975) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-15 17:35:32 UTC (rev 5976) @@ -888,3 +888,80 @@ return (1,-1,-1) else: return (0,-1,-1) + +# Determines if the dualclassed actor has the two base classes in reverse order. +# This happens since dualclassed actors are treated as multiclassed and there +# are only so many valid multiclasses. +# Example: diviner/fighter maps to FIGHTER_MAGE instead of MAGE_FIGHTER +def IsDualSwap (actor): + Dual = IsDualClassed (actor, 1) + + # not dual classed + if Dual[0] == 0: + return 0 + + # split the full class name into its individual parts + # i.e FIGHTER_MAGE becomes [FIGHTER, MAGE] + ClassTable = GemRB.LoadTableObject ("classes") + Class = GemRB.GetPlayerStat (actor, IE_CLASS) + Class = ClassTable.FindValue (5, Class) + Class = ClassTable.GetRowName (Class) + Class = Class.split("_") + + # get our old class name + if Dual[0] == 2: + BaseClass = ClassTable.GetRowName (Dual[1]) + else: + KitList = GemRB.LoadTableObject ("kitlist") + BaseClass = GetKitIndex (actor) + BaseClass = KitList.GetValue (BaseClass, 7) + BaseClass = ClassTable.FindValue (5, BaseClass) + BaseClass = ClassTable.GetRowName (BaseClass) + + # if our old class is the first class, we need to swap + if Class[0] == BaseClass: + return 1 + + return 0 + +## +# +# Determines if an actor is multiclassed and returns the individual classes. +# @param actor The character reference. +# @param verbose If 0 simply returns 0 if not multi. +# @return A tuple - (IsMultiClassed, Class1, Class2, Class3). +def IsMultiClassed (actor, verbose): + # get our base class + ClassTable = GemRB.LoadTableObject ("classes") + ClassIndex = ClassTable.FindValue (5, GemRB.GetPlayerStat (actor, IE_CLASS)) + IsMulti = ClassTable.GetValue (ClassIndex, 4) # 0 if not multi'd + IsDual = IsDualClassed (actor, 0) + + # dual-class char's look like multi-class chars + if (IsMulti == 0) or (IsDual[0] > 0): + return (0,-1,-1,-1) + elif verbose == 0: + return (IsMulti,-1,-1,-1) + + # get all our classes (leave space for our number of classes in the return array) + Classes = [0]*4 + NumClasses = 0 + Mask = 1 # we're looking at multiples of 2 + + # loop through each class and test it as a mask + # TODO: make 16 dynamic? -- allows for custom classes (not just kits) + for i in range (1, 16): + if IsMulti&Mask: # it's part of this class + NumClasses = NumClasses+1 + Classes[NumClasses] = i # mask is (i-1)^2 where i is class id + Mask = 1 << i # shift to the next multiple of 2 for testing + + # in case we couldn't figure out to which classes the multi belonged + if NumClasses < 2: + return (0,-1,-1,-1) + + # save our number of classes (2 or 3) and make sure we return a tuple + Classes[0] = NumClasses + Classes = (Classes[0], Classes[1], Classes[2], Classes[3]) + + return Classes This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fu...@us...> - 2009-05-17 16:07:13
|
Revision: 5990 http://gemrb.svn.sourceforge.net/gemrb/?rev=5990&view=rev Author: fuzzie Date: 2009-05-17 16:07:11 +0000 (Sun, 17 May 2009) Log Message: ----------- patch from mattinm: tidy up IsMultiClassed Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-17 14:50:40 UTC (rev 5989) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-17 16:07:11 UTC (rev 5990) @@ -944,7 +944,7 @@ return (IsMulti,-1,-1,-1) # get all our classes (leave space for our number of classes in the return array) - Classes = [0]*4 + Classes = [0]*3 NumClasses = 0 Mask = 1 # we're looking at multiples of 2 @@ -952,16 +952,13 @@ # TODO: make 16 dynamic? -- allows for custom classes (not just kits) for i in range (1, 16): if IsMulti&Mask: # it's part of this class - NumClasses = NumClasses+1 Classes[NumClasses] = i # mask is (i-1)^2 where i is class id + NumClasses = NumClasses+1 Mask = 1 << i # shift to the next multiple of 2 for testing # in case we couldn't figure out to which classes the multi belonged if NumClasses < 2: return (0,-1,-1,-1) - - # save our number of classes (2 or 3) and make sure we return a tuple - Classes[0] = NumClasses - Classes = (Classes[0], Classes[1], Classes[2], Classes[3]) - return Classes + # return the tuple + return (NumClasses, Classes[0], Classes[1], Classes[2]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-05-22 21:16:17
|
Revision: 6049 http://gemrb.svn.sourceforge.net/gemrb/?rev=6049&view=rev Author: mattinm Date: 2009-05-22 21:16:11 +0000 (Fri, 22 May 2009) Log Message: ----------- bug incorrectly determined FirstClassIndex for kits Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-22 18:53:27 UTC (rev 6048) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-22 21:16:11 UTC (rev 6049) @@ -860,13 +860,12 @@ KitIndex = GetKitIndex (actor) if (Dual & MC_WAS_ANY_CLASS) > 0: # first (previous) class of the dual class + FirstClassIndex = ClassTable.FindValue (15, Dual & MC_WAS_ANY_CLASS) if KitIndex: DualInfo.append (1) DualInfo.append (KitIndex) - FirstClassIndex = ClassIndex else: DualInfo.append (2) - FirstClassIndex = ClassTable.FindValue (15, Dual & MC_WAS_ANY_CLASS) DualInfo.append (FirstClassIndex) # use the first class of the multiclass bunch that isn't the same as the first class This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fu...@us...> - 2009-05-23 15:46:19
|
Revision: 6061 http://gemrb.svn.sourceforge.net/gemrb/?rev=6061&view=rev Author: fuzzie Date: 2009-05-23 15:46:14 +0000 (Sat, 23 May 2009) Log Message: ----------- pass the right actor to CanLevelUp when updating portrait Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 15:42:40 UTC (rev 6060) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 15:46:14 UTC (rev 6061) @@ -638,7 +638,7 @@ for i in range((len(effects)+2)/3): states=states+effects[len(effects)-i*3-3:len(effects)-i*3]+"\n" - if CanLevelUp (pc): + if CanLevelUp (i+1): states = chr(255)+"\n"+states else: states = "\n"+states This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fu...@us...> - 2009-05-23 16:19:58
|
Revision: 6064 http://gemrb.svn.sourceforge.net/gemrb/?rev=6064&view=rev Author: fuzzie Date: 2009-05-23 16:19:52 +0000 (Sat, 23 May 2009) Log Message: ----------- bg2: preload some common tables into globals in GUICommonWindows.py Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 16:16:23 UTC (rev 6063) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 16:19:52 UTC (rev 6064) @@ -39,6 +39,10 @@ ActionsWindow = None DraggedPortrait = None +ClassTable = GemRB.LoadTableObject ("classes") +NextLevelTable = GemRB.LoadTableObject ("XPLEVEL") +KitListTable = GemRB.LoadTableObject ("kitlist") + def SetupMenuWindowControls (Window, Gears, ReturnToGame): global OptionsWindow @@ -459,7 +463,6 @@ def GetKitIndex (actor): Class = GemRB.GetPlayerStat (actor, IE_CLASS) - KitTable = GemRB.LoadTableObject ("kitlist") Kit = GemRB.GetPlayerStat (actor, IE_KIT) KitIndex = 0 @@ -469,7 +472,7 @@ # carefully looking for kit by the usability flag # since the barbarian kit id clashes with the no-kit value if KitIndex == 0 and Kit != 0x4000: - KitIndex = KitTable.FindValue (6, Kit) + KitIndex = KitListTable.FindValue (6, Kit) if KitIndex == -1: KitIndex = 0 @@ -480,9 +483,7 @@ if ClassTitle == 0: Class = GemRB.GetPlayerStat (actor, IE_CLASS) - ClassTable = GemRB.LoadTableObject ("classes") ClassIndex = ClassTable.FindValue ( 5, Class ) - KitTable = GemRB.LoadTableObject ("kitlist") KitIndex = GetKitIndex (actor) Multi = ClassTable.GetValue (ClassIndex, 4) Dual = IsDualClassed (actor, 1) @@ -494,14 +495,14 @@ if Dual[0]: # dual class # first (previous) kit or class of the dual class if Dual[0] == 1: - ClassTitle = KitTable.GetValue (Dual[1], 2) + ClassTitle = KitListTable.GetValue (Dual[1], 2) elif Dual[0] == 2: ClassTitle = ClassTable.GetValue (Dual[1], 2) ClassTitle = GemRB.GetString (ClassTitle) + " / " ClassTitle += GemRB.GetString (ClassTable.GetValue (Dual[2], 2)) else: # ordinary class or kit if KitIndex: - ClassTitle = KitTable.GetValue (KitIndex, 2) + ClassTitle = KitListTable.GetValue (KitIndex, 2) else: ClassTitle = ClassTable.GetValue (ClassIndex, 2) ClassTitle = GemRB.GetString (ClassTitle) @@ -738,7 +739,6 @@ if level2 > 20: level2 = 20 Class = GemRB.GetPlayerStat (pc, IE_CLASS) - ClassTable = GemRB.LoadTableObject ("classes") Race = GemRB.GetPlayerStat (pc, IE_RACE) RaceTable = GemRB.LoadTableObject ("races") @@ -864,7 +864,6 @@ if verbose: Class = GemRB.GetPlayerStat (actor, IE_CLASS) - ClassTable = GemRB.LoadTableObject ("classes") ClassIndex = ClassTable.FindValue (5, Class) Multi = ClassTable.GetValue (ClassIndex, 4) DualInfo = [] @@ -912,7 +911,6 @@ # split the full class name into its individual parts # i.e FIGHTER_MAGE becomes [FIGHTER, MAGE] - ClassTable = GemRB.LoadTableObject ("classes") Class = GemRB.GetPlayerStat (actor, IE_CLASS) Class = ClassTable.FindValue (5, Class) Class = ClassTable.GetRowName (Class) @@ -922,9 +920,8 @@ if Dual[0] == 2: BaseClass = ClassTable.GetRowName (Dual[1]) else: - KitList = GemRB.LoadTableObject ("kitlist") BaseClass = GetKitIndex (actor) - BaseClass = KitList.GetValue (BaseClass, 7) + BaseClass = KitListTable.GetValue (BaseClass, 7) BaseClass = ClassTable.FindValue (5, BaseClass) BaseClass = ClassTable.GetRowName (BaseClass) @@ -942,7 +939,6 @@ # @return A tuple - (IsMultiClassed, Class1, Class2, Class3). def IsMultiClassed (actor, verbose): # get our base class - ClassTable = GemRB.LoadTableObject ("classes") ClassIndex = ClassTable.FindValue (5, GemRB.GetPlayerStat (actor, IE_CLASS)) IsMulti = ClassTable.GetValue (ClassIndex, 4) # 0 if not multi'd IsDual = IsDualClassed (actor, 0) @@ -974,7 +970,6 @@ return (NumClasses, Classes[0], Classes[1], Classes[2]) def GetNextLevelExp (Level, Class): - NextLevelTable = GemRB.LoadTableObject ("XPLEVEL") Row = NextLevelTable.GetRowIndex (Class) if Level < NextLevelTable.GetColumnCount (Row): return str (NextLevelTable.GetValue (Row, Level) ) @@ -985,7 +980,6 @@ def CanLevelUp(actor): # get our class and placements for Multi'd and Dual'd characters Class = GemRB.GetPlayerStat (actor, IE_CLASS) - ClassTable = GemRB.LoadTableObject ("classes") Class = ClassTable.FindValue (5, Class) Class = ClassTable.GetRowName (Class) Multi = IsMultiClassed (actor, 1) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ave...@us...> - 2009-05-23 17:30:21
|
Revision: 6068 http://gemrb.svn.sourceforge.net/gemrb/?rev=6068&view=rev Author: avenger_teambg Date: 2009-05-23 17:30:18 +0000 (Sat, 23 May 2009) Log Message: ----------- don't overwrite variables :D Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 16:53:39 UTC (rev 6067) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 17:30:18 UTC (rev 6068) @@ -615,7 +615,10 @@ Button.SetTooltip ("") continue - Button.SetFlags (IE_GUI_BUTTON_PICTURE|IE_GUI_BUTTON_ALIGN_TOP|IE_GUI_BUTTON_ALIGN_LEFT|IE_GUI_BUTTON_HORIZONTAL|IE_GUI_BUTTON_DRAGGABLE, OP_SET) + # IE_GUI_BUTTON_ALIGN_LEFT| IE_GUI_BUTTON_ALIGN_TOP| \ + Button.SetFlags (IE_GUI_BUTTON_PICTURE| \ + IE_GUI_BUTTON_HORIZONTAL| \ + IE_GUI_BUTTON_DRAGGABLE|IE_GUI_BUTTON_MULTILINE, OP_SET) Button.SetState (IE_GUI_BUTTON_ENABLED) Button.SetPicture (pic, "NOPORTSM") hp = GemRB.GetPlayerStat (i+1, IE_HITPOINTS) @@ -636,8 +639,8 @@ #add effects on the portrait effects = GemRB.GetPlayerStates (i+1) states = "" - for i in range((len(effects)+2)/3): - states=states+effects[len(effects)-i*3-3:len(effects)-i*3]+"\n" + for col in range((len(effects)+2)/3): + states=states+effects[len(effects)-col*3-3:len(effects)-col*3]+"\n" if CanLevelUp (i+1): states = chr(255)+"\n"+states This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fu...@us...> - 2009-05-23 18:02:15
|
Revision: 6072 http://gemrb.svn.sourceforge.net/gemrb/?rev=6072&view=rev Author: fuzzie Date: 2009-05-23 18:02:13 +0000 (Sat, 23 May 2009) Log Message: ----------- bg2 portrait icons: align left again, slice states better Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 17:45:55 UTC (rev 6071) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 18:02:13 UTC (rev 6072) @@ -618,6 +618,7 @@ # IE_GUI_BUTTON_ALIGN_LEFT| IE_GUI_BUTTON_ALIGN_TOP| \ Button.SetFlags (IE_GUI_BUTTON_PICTURE| \ IE_GUI_BUTTON_HORIZONTAL| \ + IE_GUI_BUTTON_ALIGN_LEFT| \ IE_GUI_BUTTON_DRAGGABLE|IE_GUI_BUTTON_MULTILINE, OP_SET) Button.SetState (IE_GUI_BUTTON_ENABLED) Button.SetPicture (pic, "NOPORTSM") @@ -639,8 +640,9 @@ #add effects on the portrait effects = GemRB.GetPlayerStates (i+1) states = "" - for col in range((len(effects)+2)/3): - states=states+effects[len(effects)-col*3-3:len(effects)-col*3]+"\n" + for col in range(len(effects)): + states = states + effects[col:col+1] + if col % 3 == 2: states = states + "\n" if CanLevelUp (i+1): states = chr(255)+"\n"+states This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fu...@us...> - 2009-05-23 18:22:51
|
Revision: 6073 http://gemrb.svn.sourceforge.net/gemrb/?rev=6073&view=rev Author: fuzzie Date: 2009-05-23 18:22:44 +0000 (Sat, 23 May 2009) Log Message: ----------- temporary fix: add an extra newline to bg2 portrait text when levelup is present, due to BAM offset Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 18:02:13 UTC (rev 6072) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 18:22:44 UTC (rev 6073) @@ -645,7 +645,7 @@ if col % 3 == 2: states = states + "\n" if CanLevelUp (i+1): - states = chr(255)+"\n"+states + states = chr(255)+"\n\n"+states else: states = "\n"+states Button.SetText(states) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fu...@us...> - 2009-05-23 18:39:30
|
Revision: 6074 http://gemrb.svn.sourceforge.net/gemrb/?rev=6074&view=rev Author: fuzzie Date: 2009-05-23 18:39:28 +0000 (Sat, 23 May 2009) Log Message: ----------- pad portrait button text with newlines Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 18:22:44 UTC (rev 6073) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 18:39:28 UTC (rev 6074) @@ -615,10 +615,9 @@ Button.SetTooltip ("") continue - # IE_GUI_BUTTON_ALIGN_LEFT| IE_GUI_BUTTON_ALIGN_TOP| \ Button.SetFlags (IE_GUI_BUTTON_PICTURE| \ IE_GUI_BUTTON_HORIZONTAL| \ - IE_GUI_BUTTON_ALIGN_LEFT| \ + IE_GUI_BUTTON_ALIGN_LEFT| IE_GUI_BUTTON_ALIGN_TOP| \ IE_GUI_BUTTON_DRAGGABLE|IE_GUI_BUTTON_MULTILINE, OP_SET) Button.SetState (IE_GUI_BUTTON_ENABLED) Button.SetPicture (pic, "NOPORTSM") @@ -643,11 +642,13 @@ for col in range(len(effects)): states = states + effects[col:col+1] if col % 3 == 2: states = states + "\n" + for i in range(3 - ((len(effects) + 2)/3)): + states = "\n" + states + states = "\n\n" + states if CanLevelUp (i+1): - states = chr(255)+"\n\n"+states - else: - states = "\n"+states + states = " " + chr(255) + states + Button.SetText(states) return This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fu...@us...> - 2009-05-23 18:42:39
|
Revision: 6075 http://gemrb.svn.sourceforge.net/gemrb/?rev=6075&view=rev Author: fuzzie Date: 2009-05-23 18:42:32 +0000 (Sat, 23 May 2009) Log Message: ----------- rename another conflicting variable, oops Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 18:39:28 UTC (rev 6074) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 18:42:32 UTC (rev 6075) @@ -642,7 +642,7 @@ for col in range(len(effects)): states = states + effects[col:col+1] if col % 3 == 2: states = states + "\n" - for i in range(3 - ((len(effects) + 2)/3)): + for x in range(3 - ((len(effects) + 2)/3)): states = "\n" + states states = "\n\n" + states This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fu...@us...> - 2009-05-23 19:16:49
|
Revision: 6076 http://gemrb.svn.sourceforge.net/gemrb/?rev=6076&view=rev Author: fuzzie Date: 2009-05-23 19:16:48 +0000 (Sat, 23 May 2009) Log Message: ----------- more bg2 portrait icon work Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 18:42:32 UTC (rev 6075) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-23 19:16:48 UTC (rev 6076) @@ -602,10 +602,10 @@ pc = GemRB.GameGetSelectedPCSingle () Inventory = GemRB.GetVar ("Inventory") - for i in range (PARTY_SIZE): - Button = Window.GetControl (i) - pic = GemRB.GetPlayerPortrait (i+1, 1) - if Inventory and pc != i+1: + for portid in range (PARTY_SIZE): + Button = Window.GetControl (portid) + pic = GemRB.GetPlayerPortrait (portid+1, 1) + if Inventory and pc != portid+1: pic = None if not pic: @@ -621,9 +621,9 @@ IE_GUI_BUTTON_DRAGGABLE|IE_GUI_BUTTON_MULTILINE, OP_SET) Button.SetState (IE_GUI_BUTTON_ENABLED) Button.SetPicture (pic, "NOPORTSM") - hp = GemRB.GetPlayerStat (i+1, IE_HITPOINTS) - hp_max = GemRB.GetPlayerStat (i+1, IE_MAXHITPOINTS) - state = GemRB.GetPlayerStat (i+1, IE_STATE_ID) + hp = GemRB.GetPlayerStat (portid+1, IE_HITPOINTS) + hp_max = GemRB.GetPlayerStat (portid+1, IE_MAXHITPOINTS) + state = GemRB.GetPlayerStat (portid+1, IE_STATE_ID) if (hp_max<1): ratio = 0.0 @@ -634,20 +634,22 @@ Button.SetOverlay (ratio, 64,64,64,200, 64,64,64,200) else: Button.SetOverlay (ratio, 255,0,0,200, 128,0,0,200) - Button.SetTooltip (GemRB.GetPlayerName (i+1, 1) + "\n%d/%d" %(hp, hp_max)) + Button.SetTooltip (GemRB.GetPlayerName (portid+1, 1) + "\n%d/%d" %(hp, hp_max)) #add effects on the portrait - effects = GemRB.GetPlayerStates (i+1) + effects = GemRB.GetPlayerStates (portid+1) states = "" for col in range(len(effects)): - states = states + effects[col:col+1] - if col % 3 == 2: states = states + "\n" - for x in range(3 - ((len(effects) + 2)/3)): + states = effects[col:col+1] + states + if col % 3 == 2: states = "\n" + states + for x in range(3 - (len(effects)/3)): states = "\n" + states - states = "\n\n" + states + states = "\n" + states - if CanLevelUp (i+1): - states = " " + chr(255) + states + # chr(154) is the talk icon chr(155) is the shopping icon + blank = chr(238) + if CanLevelUp (portid+1): + states = blank + blank + chr(255) + states Button.SetText(states) return This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-05-28 02:59:20
|
Revision: 6137 http://gemrb.svn.sourceforge.net/gemrb/?rev=6137&view=rev Author: mattinm Date: 2009-05-28 02:59:18 +0000 (Thu, 28 May 2009) Log Message: ----------- - fixed a nasty reference error that changed the characters level if passed as a parameter from LevelUp.py - determine MaxLevel correctly now Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-28 02:40:20 UTC (rev 6136) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-28 02:59:18 UTC (rev 6137) @@ -781,24 +781,22 @@ #Levels needs to be an array containing the level desired for each class #this is potentially useful for leveling up -def SetupSavingThrows (pc, Levels=None): +def SetupSavingThrows (pc, Level=None): #storing levels as an array makes them easier to deal with - if not Levels: - Levels = [GemRB.GetPlayerStat (pc, IE_LEVEL), \ - GemRB.GetPlayerStat (pc, IE_LEVEL2), \ - GemRB.GetPlayerStat (pc, IE_LEVEL3)] + if not Level: + Levels = [GemRB.GetPlayerStat (pc, IE_LEVEL)-1, \ + GemRB.GetPlayerStat (pc, IE_LEVEL2)-1, \ + GemRB.GetPlayerStat (pc, IE_LEVEL3)-1] + else: + Levels = [] + for level in Level: + Levels.append (level-1) #get some basic values Class = [GemRB.GetPlayerStat (pc, IE_CLASS)] Race = GemRB.GetPlayerStat (pc, IE_RACE) RaceTable = GemRB.LoadTableObject ("races") - #make sure to limit the levels to the table allowable - MaxLevel = RaceTable.GetRowCount ()-1 - for i in range (len(Levels)): - if Levels[i] > MaxLevel: - Levels[i] = MaxLevel - #adjust the class for multi/dual chars Multi = IsMultiClassed (pc, 1) Dual = IsDualClassed (pc, 1) @@ -812,6 +810,8 @@ TmpLevel = Levels[0] Levels[0] = Levels[1] Levels[1] = TmpLevel + if NumClasses>len(Levels): + return #see if we can add racial bonuses to saves #default return is -1 NOT "*", so we convert always convert to str @@ -830,15 +830,22 @@ for i in range (NumClasses): SaveName = ClassTable.GetValue (ClassTable.FindValue (5, Class[i]), 3, 0) SaveTables.append (GemRB.LoadTableObject (SaveName) ) + if not len (SaveTables): + return + #make sure to limit the levels to the table allowable + MaxLevel = SaveTables[0].GetColumnCount ()-1 + for i in range (len(Levels)): + if Levels[i] > MaxLevel: + Levels[i] = MaxLevel + #save the saves for row in range (5): CurrentSave = 20 for i in range (NumClasses): #loop through each class and update the save value if we have #a better save - TmpTable = SaveTables[i] - TmpSave = TmpTable.GetValue (row, Levels[i]-1) + TmpSave = SaveTables[i].GetValue (row, Levels[i]) if TmpSave and (TmpSave < CurrentSave or i == 0): CurrentSave = TmpSave This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ave...@us...> - 2009-05-28 21:56:22
|
Revision: 6165 http://gemrb.svn.sourceforge.net/gemrb/?rev=6165&view=rev Author: avenger_teambg Date: 2009-05-28 21:56:08 +0000 (Thu, 28 May 2009) Log Message: ----------- fixed UnboundLocalError Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-28 21:53:49 UTC (rev 6164) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-05-28 21:56:08 UTC (rev 6165) @@ -735,9 +735,8 @@ def PortraitButtonOnMouseEnter (): global DraggedPortrait + i = GemRB.GetVar ("PressedPortrait") if GemRB.IsDraggingItem()==2: - i = GemRB.GetVar ("PressedPortrait") - if DraggedPortrait != None: GemRB.SwapPCs (DraggedPortrait, i) GemRB.SetVar ("PressedPortrait", DraggedPortrait) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-06-01 11:39:08
|
Revision: 6235 http://gemrb.svn.sourceforge.net/gemrb/?rev=6235&view=rev Author: mattinm Date: 2009-06-01 11:39:07 +0000 (Mon, 01 Jun 2009) Log Message: ----------- remove TODO related to previous commit Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-01 11:30:47 UTC (rev 6234) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-01 11:39:07 UTC (rev 6235) @@ -1051,7 +1051,6 @@ #add all the hp for the given level #we use ceil to ensure each class gets hp for level in range(LowLevel, HiLevel): - #TODO: do dual-class characters get the roll? rolls = HPTable.GetValue (level, 1) bonus = HPTable.GetValue (level, 2) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <lyn...@us...> - 2009-06-04 21:53:04
|
Revision: 6287 http://gemrb.svn.sourceforge.net/gemrb/?rev=6287&view=rev Author: lynxlupodian Date: 2009-06-04 21:51:40 +0000 (Thu, 04 Jun 2009) Log Message: ----------- bg2: one message per line :) Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-04 13:10:58 UTC (rev 6286) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-04 21:51:40 UTC (rev 6287) @@ -40,6 +40,7 @@ ActionsWindow = None DraggedPortrait = None +print ClassTable = GemRB.LoadTableObject ("classes") NextLevelTable = GemRB.LoadTableObject ("XPLEVEL") KitListTable = GemRB.LoadTableObject ("kitlist") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-06-05 06:57:43
|
Revision: 6288 http://gemrb.svn.sourceforge.net/gemrb/?rev=6288&view=rev Author: mattinm Date: 2009-06-05 06:57:37 +0000 (Fri, 05 Jun 2009) Log Message: ----------- always overlay with ratio of 0 if a character is dead Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-04 21:51:40 UTC (rev 6287) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-05 06:57:37 UTC (rev 6288) @@ -683,7 +683,7 @@ ratio = (hp+0.0) / hp_max if hp<1 or (state & STATE_DEAD): - Button.SetOverlay (ratio, 64,64,64,200, 64,64,64,200) + Button.SetOverlay (0, 64,64,64,200, 64,64,64,200) else: Button.SetOverlay (ratio, 255,0,0,200, 128,0,0,200) Button.SetTooltip (GemRB.GetPlayerName (portid+1, 1) + "\n%d/%d" %(hp, hp_max)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-06-05 23:58:07
|
Revision: 6305 http://gemrb.svn.sourceforge.net/gemrb/?rev=6305&view=rev Author: mattinm Date: 2009-06-05 23:58:05 +0000 (Fri, 05 Jun 2009) Log Message: ----------- added level drain check to CanLevelUp Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-05 22:36:30 UTC (rev 6304) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-05 23:58:05 UTC (rev 6305) @@ -1356,9 +1356,23 @@ Dual = IsDualClassed (actor, 1) # get all the levels and overall xp here - Levels = [GemRB.GetPlayerStat (actor, IE_LEVEL), GemRB.GetPlayerStat (actor, IE_LEVEL2), GemRB.GetPlayerStat (actor, IE_LEVEL3)] xp = GemRB.GetPlayerStat (actor, IE_XP) + Levels = [GemRB.GetPlayerStat (actor, IE_LEVEL), GemRB.GetPlayerStat (actor, IE_LEVEL2),\ + GemRB.GetPlayerStat (actor, IE_LEVEL3)] + if Multi[0]<2: + if IsDualSwap (actor): + Levels = [Levels[1], Levels[0]] + else: + Levels = [Levels[0], Levels[1]] + #we only want the active classes for IE_CLASSLEVELSUM + if Dual[0]>0 and Levels[0] <= Levels[1]: + Levels = [Levels[0]] + + #TODO: better way to check for level drain? + if sum(Levels) != GemRB.GetPlayerStat(actor, IE_CLASSLEVELSUM): + return 0 + if Multi[0] > 1: # multiclassed xp = xp/Multi[0] # divide the xp evenly between the classes for i in range (Multi[0]): @@ -1370,8 +1384,6 @@ # didn't find a class that could level return 0 elif Dual[0] > 0: # dual classed - if IsDualSwap (actor): # swap the levels if we have to - Levels = [Levels[1], Levels[0], Levels[2]] # get the class we can level Class = ClassTable.GetRowName (Dual[2]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-06-06 05:43:40
|
Revision: 6307 http://gemrb.svn.sourceforge.net/gemrb/?rev=6307&view=rev Author: mattinm Date: 2009-06-06 05:43:39 +0000 (Sat, 06 Jun 2009) Log Message: ----------- mixed up IE_LEVELDRAIN effect with IE_CLASSLEVELSUM stat (both 216) Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-06 00:43:23 UTC (rev 6306) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-06 05:43:39 UTC (rev 6307) @@ -1360,17 +1360,8 @@ Levels = [GemRB.GetPlayerStat (actor, IE_LEVEL), GemRB.GetPlayerStat (actor, IE_LEVEL2),\ GemRB.GetPlayerStat (actor, IE_LEVEL3)] - if Multi[0]<2: - if IsDualSwap (actor): - Levels = [Levels[1], Levels[0]] - else: - Levels = [Levels[0], Levels[1]] - #we only want the active classes for IE_CLASSLEVELSUM - if Dual[0]>0 and Levels[0] <= Levels[1]: - Levels = [Levels[0]] - - #TODO: better way to check for level drain? - if sum(Levels) != GemRB.GetPlayerStat(actor, IE_CLASSLEVELSUM): + #TODO: double-check this + if GemRB.GetPlayerStat(actor, IE_LEVELDRAIN)>0: return 0 if Multi[0] > 1: # multiclassed This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-06-15 08:20:56
|
Revision: 6442 http://gemrb.svn.sourceforge.net/gemrb/?rev=6442&view=rev Author: mattinm Date: 2009-06-15 08:20:53 +0000 (Mon, 15 Jun 2009) Log Message: ----------- added check for GetNextExpLevel returning 0 (cannot level anymore) Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-15 07:32:11 UTC (rev 6441) +++ gemrb/trunk/gemrb/GUIScripts/bg2/GUICommonWindows.py 2009-06-15 08:20:53 UTC (rev 6442) @@ -1369,7 +1369,8 @@ for i in range (Multi[0]): # if any class can level, return 1 ClassIndex = ClassTable.FindValue (5, Multi[i+1]) - if int(GetNextLevelExp (Levels[i], ClassTable.GetRowName (ClassIndex))) <= xp: + tmpNext = int(GetNextLevelExp (Levels[i], ClassTable.GetRowName (ClassIndex) ) ) + if tmpNext != 0 and tmpNext <= xp: return 1 # didn't find a class that could level @@ -1381,7 +1382,8 @@ Levels = [Levels[1], Levels[0], Levels[2]] # check the class that can be level (single or dual) - return int(GetNextLevelExp (Levels[0], Class)) <= xp + tmpNext = int(GetNextLevelExp (Levels[0], Class) ) + return (tmpNext != 0 and tmpNext <= xp) def LearnPriestSpells (pc, level, mask): """Learns all the priest spells through the given spell level. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |