+ add an option to have hint messages for puzzle item uses

+ add distinctly colored sprites for the second planet puzzle items
* add q2s2 message
main
an 2022-07-10 13:38:57 -06:00
parent 0bf3437719
commit fe65680213
8 changed files with 43 additions and 0 deletions

View File

@ -7,4 +7,5 @@ server bool vht_player_touchshatter = true;
server bool vht_player_questlog = true;
user int vht_player_questlogplural = 0;
server bool vht_player_scruteswitch = true;
server bool vht_player_scrutepuzzle = true;
server int vht_monster_centaur = 2;

BIN
graphics/ARTIGMB2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 926 B

BIN
graphics/ARTIGMG2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 924 B

View File

@ -12,6 +12,7 @@ VHT_PLAYER_TOUCHSHATTER = "Shatter Frozen Enemies On Touch";
VHT_PLAYER_QUESTLOG = "Enable Quest Log";
VHT_PLAYER_QUESTLOGPLURAL = "Quest Log First-Person Pronouns (English)";
VHT_PLAYER_SCRUTESWITCH = "Add Messages For Unmarked Switches";
VHT_PLAYER_SCRUTEPUZZLE = "Add Messages For Missing Puzzle Items";
VHT_MONSTER_CENTAUR = "Centaur Behaviour";
VHT_OPT_CONSTANT = "Constant";
@ -23,6 +24,24 @@ VHT_OPT_SINGULAR = "I/me/my";
VHT_OPT_PLURAL = "we/our/us";
VHT_OPT_PLURAL2 = "we&/our&/us&";
VHT_SWI_PUZZLE0 = "it beckons for the skull of a warrior...";
VHT_SWI_PUZZLE1 = "it beckons for the heart of a serpent rider...";
VHT_SWI_PUZZLE2 = "another red gem should fit here...";
VHT_SWI_PUZZLE3 = "a green gem should fit here...";
VHT_SWI_PUZZLE4 = "another green gem should fit here...";
VHT_SWI_PUZZLE5 = "a blue gem should fit here...";
VHT_SWI_PUZZLE6 = "another blue gem should fit here...";
VHT_SWI_PUZZLE7 = "this could fit a book...";
VHT_SWI_PUZZLE8 = "this could also fit a book...";
VHT_SWI_PUZZLE9 = "this could fit a mask of some kind...";
VHT_SWI_PUZZLE10 = "the shape of the grand weapon of a fighter...";
VHT_SWI_PUZZLE11 = "the shape of the grand weapon of a cleric...";
VHT_SWI_PUZZLE12 = "the shape of the grand weapon of a mage...";
VHT_SWI_PUZZLE13 = "this could be repaired with a steel gear...";
VHT_SWI_PUZZLE14 = "this could be repaired with a bronze gear...";
VHT_SWI_PUZZLE15 = "this could be repaired with a steel and bronze gear...";
VHT_SWI_PUZZLE16 = "this could be repaired with a bronze and steel gear...";
VHT_SWI_5_1275 = "the path to the left lever opens";
VHT_SWI_5_1283 = "the path to the right lever opens";
@ -59,6 +78,10 @@ VHT_QST_2_1 =
"two more paths become available to @=:\n"
"- guardian of fire: %i/1\n"
"- guardian of steel: %i/2";
VHT_QST_2_2 =
"the eastward guardians opened,\n"
"a parallel portal to the guardian of ice\n"
"opens on the west side.";
VHT_QST_3_0 =
"all that seems to be left here is\n"

View File

@ -40,6 +40,7 @@ OptionMenu "VhtMenu" {
Option "$VHT_PLAYER_QUESTLOG", "vht_player_questlog", "OnOff"
Option "$VHT_PLAYER_QUESTLOGPLURAL", "vht_player_questlogplural", "VhtPlural"
Option "$VHT_PLAYER_SCRUTESWITCH", "vht_player_scruteswitch", "OnOff"
Option "$VHT_PLAYER_SCRUTEPUZZLE", "vht_player_scrutepuzzle", "OnOff"
StaticText ""
Option "$VHT_MONSTER_CENTAUR", "vht_monster_centaur", "VhtCentaurBehaviour"

BIN
sprites/AGB2A0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 926 B

BIN
sprites/AGG2A0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 924 B

View File

@ -45,6 +45,24 @@ class VhtEvents : StaticEventHandler {
qh.vhtTick();
}
}
override void worldLinePreActivated(WorldEvent e) {
if(vht_player_scrutepuzzle) {
if(e.activatedLine.special == UsePuzzleItem) {
int itemNum = e.activatedLine.args[0];
bool any = false;
for(let item = e.thing.inv; item; item = item.inv) {
let pi = PuzzleItem(item);
if(pi && pi.puzzleItemNumber == itemNum) {
any = true;
break;
}
}
if(!any) {
Console.midPrint(null, "$VHT_SWI_PUZZLE" .. itemNum, true);
}
}
}
}
override void worldLineActivated(WorldEvent e) {
if(vht_player_scruteswitch) {
let which = "VHT_SWI_" .. level.levelNum .. "_" .. e.activatedLine.index();