Skip to content
This repository has been archived by the owner on Jun 28, 2024. It is now read-only.

Commit

Permalink
0.79.23
Browse files Browse the repository at this point in the history
contingency fix
  • Loading branch information
subtledoctor committed Mar 25, 2021
1 parent 56601bf commit 11ec142
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 8 deletions.
2 changes: 1 addition & 1 deletion faiths_and_powers/Faiths_and_Powers.tp2
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ BACKUP ~faiths_and_powers/backup~
AUTHOR ~SubtleD and Grammarsalad~


VERSION ~0.79.22~
VERSION ~0.79.23~


//README ~faiths_and_powers/readme-pnp.html~
Expand Down
24 changes: 17 additions & 7 deletions faiths_and_powers/lib/semi_spontaneous.tpa
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

// v5.7 - universal
// v5.8 - targeting fix


/*
Expand All @@ -26,7 +26,7 @@ the way it works:
-- zlotr.cre runs zlotr.bcs
-- zlotr.bcs gives chosen spells and casts zprpd
-- zprpd restores spellcasting, casts zsplz
- zsplz gives innate spells according to your casting slots
- zsplz gives innate spells according to your casting slots and semi state
*/


Expand Down Expand Up @@ -323,6 +323,7 @@ COPY ~%MOD_FOLDER%/lib/semi_spont/d5_base.spl~ ~override/d5zspld.spl~
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = (4 << 28) parameter2 = %fake_sham_slots_1_7% timing = 1 STR_VAR resource = ~d5zdot7c~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = (8 << 28) parameter2 = %fake_sham_slots_1_7% timing = 1 STR_VAR resource = ~d5zdot7d~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 206 target = 1 parameter1 = (0 - 1) timing = 0 duration = 1 STR_VAR resource = ~d5zspld~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 318 insert_point = 0 target = 1 parameter1 = %semi_spont_divine% parameter2 = 111 timing = 0 duration = 1 STR_VAR resource = ~d5zspld~ END

COPY ~%MOD_FOLDER%/lib/semi_spont/d5_base.spl~ ~override/d5zspla.spl~
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = (1 << 4) parameter2 = %fake_sorc_slots_1_7% timing = 1 STR_VAR resource = ~d5zwot1a~ END
Expand Down Expand Up @@ -362,6 +363,7 @@ COPY ~%MOD_FOLDER%/lib/semi_spont/d5_base.spl~ ~override/d5zspla.spl~
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = (4 << 28) parameter2 = %fake_sorc_slots_8_9% timing = 1 STR_VAR resource = ~d5zwot9c~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = (8 << 28) parameter2 = %fake_sorc_slots_8_9% timing = 1 STR_VAR resource = ~d5zwot9d~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 206 target = 1 parameter1 = (0 - 1) timing = 0 duration = 1 STR_VAR resource = ~d5zspla~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 318 insert_point = 0 target = 1 parameter1 = %semi_spont_arcane% parameter2 = 111 timing = 0 duration = 1 STR_VAR resource = ~d5zspla~ END

//assign stats for spell slots to each spell level____________________________________
//
Expand Down Expand Up @@ -726,7 +728,9 @@ ACTION_IF !(FILE_EXISTS_IN_GAME ~d5zrfrsh.spl~) BEGIN
LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 1 duration = 0 STR_VAR resource = ~d5zz172~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zsplz~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_divine% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_arcane% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_arcane% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
END


Expand Down Expand Up @@ -792,6 +796,8 @@ ACTION_IF !(FILE_EXISTS_IN_GAME ~d5zprpd.spl~) BEGIN
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zsplz~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_divine% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_arcane% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
END


Expand Down Expand Up @@ -1080,13 +1086,17 @@ COPY_EXISTING ~d5zclons.2da~ ~override~
END
PATCH_IF (lose_spell_on_interrupt = 0) BEGIN
LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zz172~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_divine% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_arcane% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_divine% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
// LPF ADD_SPELL_EFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_arcane% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
END
PATCH_IF (lose_spell_on_interrupt = 1) BEGIN
LPF ADD_SPELL_CFEFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zz172~ END
LPF ADD_SPELL_CFEFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_divine% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
LPF ADD_SPELL_CFEFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_arcane% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
// LPF ADD_SPELL_CFEFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_divine% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
// LPF ADD_SPELL_CFEFFECT INT_VAR opcode = 326 target = 1 parameter1 = %semi_spont_arcane% parameter2 = 110 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zspld~ END
LPF ADD_SPELL_EFFECT INT_VAR opcode = 146 target = 1 parameter2 = 1 timing = 4 duration = 1 STR_VAR resource = ~d5zspla~ END
END
// make spells adding the innate spell
COPY ~%MOD_FOLDER%/lib/semi_spont/d5_base.spl~ ~override/%give_spell%.spl~
Expand Down
14 changes: 14 additions & 0 deletions faiths_and_powers/lib/sphere_system.tpa
Original file line number Diff line number Diff line change
Expand Up @@ -1067,12 +1067,14 @@ BUT_ONLY

//UI work for contingency___________________________________________________________
//
/*
// read d5fnplst.2da
// find row with spwi617 in 1st col
// find value in 2nd/3rd/4th cols
// perform UI stuff on them
// OR... just do it manually:

// this isn't working anymore...
ACTION_FOR_EACH cont_spl IN ~d5p2617~ ~d5m2617~ ~d5f2617~ BEGIN
ACTION_IF (FILE_EXISTS_IN_GAME ~%cont_spl%.spl~) BEGIN
APPEND ~BGEE.LUA~ ~mageBookStrings['%cont_spl%'] = mageBookStrings['SPWI617']~
Expand All @@ -1083,8 +1085,20 @@ COPY_EXISTING ~UI.menu~ ~override~
REPLACE_TEXTUALLY ~mageBookEnabled[ %TAB%]+==[ %TAB%]+true~ ~((mageBookEnabled == true) or (bookMode == 1))~
REPLACE_TEXTUALLY ~mageBookEnabled[ %TAB%]+==[ %TAB%]+false~ ~mageBookEnabled == false and bookMode == 0~
BUT_ONLY
*/

// try this instead
COPY_EXISTING ~ui.menu~ ~override~
REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~contingencyDescription = mageBookStrings[contingencyResRef].tip~ ~ if not pcall(me_problem) then
contingencyDescription = 0
end~
REPLACE_TEXTUALLY CASE_SENSITIVE EXACT_MATCH ~--reload language~ ~function me_problem()
contingencyDescription = mageBookStrings[contingencyResRef].tip
end
--reload language~
//__________________________________________________________________________________


/*
//add new spells to 206/318/321/324 effects_________________________________________
//
Expand Down

0 comments on commit 11ec142

Please sign in to comment.