From: <lyn...@us...> - 2009-05-13 18:37:22
|
Revision: 5956 http://gemrb.svn.sourceforge.net/gemrb/?rev=5956&view=rev Author: lynxlupodian Date: 2009-05-13 18:36:58 +0000 (Wed, 13 May 2009) Log Message: ----------- bg2::cg: applied mattinm's patch for better handling of priest spell types Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py 2009-05-13 14:42:10 UTC (rev 5955) +++ gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py 2009-05-13 18:36:58 UTC (rev 5956) @@ -75,23 +75,16 @@ # learn divine spells if appropriate ClassSkillsTable = GemRB.LoadTableObject ("clskills") - #change this to GetPlayerStat once IE_CLASS is directly stored - ClassTable = GemRB.LoadTableObject ("classes") - ClassIndex = GemRB.GetVar ("Class")-1 - Class = ClassTable.GetValue (ClassIndex, 5) - MyChar = GemRB.GetVar ("Slot") - TableName = ClassSkillsTable.GetValue (Class, 1, 0) + Class = GemRB.GetPlayerStat (MyChar, IE_CLASS) + TableName = ClassSkillsTable.GetValue (Class, 1, 0) # cleric spells - if TableName == "*": - # it isn't a cleric or paladin, so check for druids and rangers + if TableName == "*": # only druid spells or no spells at all TableName = ClassSkillsTable.GetValue (Class, 0, 0) ClassFlag = 0x4000 - else: - ClassFlag = 0x8000 - # check for cleric/rangers, who get access to all the spells - # possibly redundant block (see SPL bit 0x0020) - if TableName == "MXSPLPRS" and ClassSkillsTable.GetValue (Class, 0, 0) != "*": + elif ClassSkillsTable.GetValue (Class, 0, 0) != "*": # cleric and druid spells ClassFlag = 0 + else: # only cleric spells + ClassFlag = 0x8000 # nulify the memorizable spell counts for type in [ "MXSPLPRS", "MXSPLPAL", "MXSPLRAN", "MXSPLDRU" ]: @@ -100,9 +93,9 @@ UnsetupSpellLevels (MyChar, type, IE_SPELL_TYPE_WIZARD, 1) if TableName != "*": - SetupSpellLevels(MyChar, TableName, IE_SPELL_TYPE_PRIEST, 1) - Learnable = GetLearnablePriestSpells( ClassFlag, GemRB.GetVar ("Alignment"), 1) + SetupSpellLevels (MyChar, TableName, IE_SPELL_TYPE_PRIEST, 1) + Learnable = GetLearnablePriestSpells (ClassFlag, GemRB.GetPlayerStat (MyChar, IE_ALIGNMENT), 1) for i in range(len(Learnable) ): - GemRB.LearnSpell (MyChar, Learnable[i], 0) + GemRB.LearnSpell (MyChar, Learnable[i], IE_SPELL_TYPE_PRIEST) return This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-05-21 02:35:05
|
Revision: 6020 http://gemrb.svn.sourceforge.net/gemrb/?rev=6020&view=rev Author: mattinm Date: 2009-05-21 02:34:57 +0000 (Thu, 21 May 2009) Log Message: ----------- using new RemoveKnownSpells function Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py 2009-05-21 02:33:53 UTC (rev 6019) +++ gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py 2009-05-21 02:34:57 UTC (rev 6020) @@ -20,7 +20,7 @@ # character generation - ability; next skills/profs/spells (CharGen6) import GemRB from CharGenCommon import * -from GUICG7 import RemoveKnownSpells +from LUSpellSelection import RemoveKnownSpells def OnLoad(): MyChar = GemRB.GetVar ("Slot") @@ -70,8 +70,8 @@ DisplayOverview (6) - RemoveKnownSpells (IE_SPELL_TYPE_WIZARD) - RemoveKnownSpells (IE_SPELL_TYPE_PRIEST) + RemoveKnownSpells (MyChar, IE_SPELL_TYPE_WIZARD, 1,9, 1) + RemoveKnownSpells (MyChar, IE_SPELL_TYPE_PRIEST, 1,7, 1) # learn divine spells if appropriate ClassSkillsTable = GemRB.LoadTableObject ("clskills") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2009-05-28 15:47:35
|
Revision: 6150 http://gemrb.svn.sourceforge.net/gemrb/?rev=6150&view=rev Author: mattinm Date: 2009-05-28 15:47:34 +0000 (Thu, 28 May 2009) Log Message: ----------- assumed there would be a spell level with MemorizableCount of 0 Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py 2009-05-28 15:40:17 UTC (rev 6149) +++ gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py 2009-05-28 15:47:34 UTC (rev 6150) @@ -104,9 +104,13 @@ SetupSpellLevels (MyChar, TableName, IE_SPELL_TYPE_PRIEST, Levels[index]) #learn all our priest spells up to the level we can learn + LearnedSpells = 0 for level in range (7): if GemRB.GetMemorizableSpellsCount (MyChar, IE_SPELL_TYPE_PRIEST, level, 1) <= 0: + LearnedSpells = 1 LearnPriestSpells (MyChar, level, ClassFlag) break + if not LearnedSpells: + LearnPriestSpells (MyChar, 7, ClassFlag) DisplayOverview (6) 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 15:54:25
|
Revision: 6151 http://gemrb.svn.sourceforge.net/gemrb/?rev=6151&view=rev Author: mattinm Date: 2009-05-28 15:54:16 +0000 (Thu, 28 May 2009) Log Message: ----------- simplified spell learning Modified Paths: -------------- gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py Modified: gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py =================================================================== --- gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py 2009-05-28 15:47:34 UTC (rev 6150) +++ gemrb/trunk/gemrb/GUIScripts/bg2/CharGen6.py 2009-05-28 15:54:16 UTC (rev 6151) @@ -104,13 +104,9 @@ SetupSpellLevels (MyChar, TableName, IE_SPELL_TYPE_PRIEST, Levels[index]) #learn all our priest spells up to the level we can learn - LearnedSpells = 0 - for level in range (7): + for level in range (8): if GemRB.GetMemorizableSpellsCount (MyChar, IE_SPELL_TYPE_PRIEST, level, 1) <= 0: - LearnedSpells = 1 LearnPriestSpells (MyChar, level, ClassFlag) break - if not LearnedSpells: - LearnPriestSpells (MyChar, 7, ClassFlag) DisplayOverview (6) return This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |