diff --git a/README.md b/README.md index 92af610b..a7861e55 100644 --- a/README.md +++ b/README.md @@ -249,6 +249,7 @@ * Can no longer collect souls in The Crazy Place from staff kills * Can collect souls in The Crazy Place after upgrading to fill 5% of max ammo per soul * Picking up a staff at The Crazy Place while holding a staff places the other staff at The Crazy Place +* Insterting a staff in The Crazy Place requires player's current weapon to be the staff * Fixed triggers for inserting and picking up staffs in The Crazy Place * Fixed being able to carry multiple staffs by picking up a staff with staff revive weapon out * Get full ammo when initially picked up after upgrading (normally missing one clip) diff --git a/scripts/zm/replaced/zm_tomb_main_quest.gsc b/scripts/zm/replaced/zm_tomb_main_quest.gsc index 732f144e..92a465d6 100644 --- a/scripts/zm/replaced/zm_tomb_main_quest.gsc +++ b/scripts/zm/replaced/zm_tomb_main_quest.gsc @@ -245,7 +245,7 @@ waittill_staff_inserted() if ( isdefined( player ) ) { - weapon_available = player hasweapon( self.weapname ); + weapon_available = player getcurrentweapon() == self.weapname; if ( weapon_available ) player takeweapon( self.weapname ); @@ -272,6 +272,10 @@ waittill_staff_inserted() self playsound( "zmb_squest_charge_place_staff" ); return; } + else + { + self.charge_trigger thread insert_staff_hint_charger(player, self.enum); + } } } @@ -362,6 +366,39 @@ can_pickup_staff() return !b_has_staff || b_staff_equipped; } +insert_staff_hint_charger(player, enum) +{ + num = player getentitynumber(); + + self.playertrigger[num] notify("insert_staff_hint_charger"); + self.playertrigger[num] endon("insert_staff_hint_charger"); + self.playertrigger[num] endon("death"); + + element = ""; + if (enum == 1) + { + element = "Fire"; + } + else if (enum == 2) + { + element = "Wind"; + } + else if (enum == 3) + { + element = "Lightning"; + } + else if (enum == 4) + { + element = "Ice"; + } + + self.playertrigger[num] sethintstring(element + " Staff Required"); + + wait 3; + + self.playertrigger[num] sethintstring(self.hint_string); +} + swap_staff_hint_charger(player) { num = player getentitynumber();