From d93294b936eb13f9f2be3e0b4de870aa7cacd614 Mon Sep 17 00:00:00 2001 From: Ben Date: Sat, 20 Jan 2024 21:23:09 -0500 Subject: [PATCH] Add ed teleporter and raid boss fixes --- .gitignore | 1 + modules/UI/gambler/gambler.client.ts | 12 +++--- modules/gameobject/windpeak.ts | 7 ++++ modules/items/book-of-travel.ts | 4 +- modules/items/vashj-fix.ts | 57 ++++++++++++++++++++++++++++ 5 files changed, 73 insertions(+), 8 deletions(-) create mode 100644 modules/gameobject/windpeak.ts diff --git a/.gitignore b/.gitignore index 6e91c3b..fb250d2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ ets.env node_modules +node_modules/* dist .vscode wow-wotlk-declarations diff --git a/modules/UI/gambler/gambler.client.ts b/modules/UI/gambler/gambler.client.ts index ee0f55b..7e9f596 100644 --- a/modules/UI/gambler/gambler.client.ts +++ b/modules/UI/gambler/gambler.client.ts @@ -45,7 +45,7 @@ function determineWin(): number { if(multiplier == 3) { tokens = 100; } - gold = multiplier * 5000; + gold = multiplier * 2000; win = 2; } @@ -53,7 +53,7 @@ function determineWin(): number { if(multiplier == 3) { tokens = 50; } - gold = multiplier * 1000; + gold = multiplier * 500; win = 1; } @@ -68,22 +68,22 @@ function determineWin(): number { ) { if(multiplier == 3) { - tokens = 20; + tokens = 3; } - gold = multiplier * 500; + gold = multiplier * 300; win = 1; } // handle two of the same class in a row if((slotSpin[0] == slotSpin[1]) && win == 0) { - gold = multiplier * 250; + gold = multiplier * 150; win = 1; if(slotSpin[1] == 1) { if(multiplier == 3) { tokens = 3; } - gold = multiplier * 250; + gold = multiplier * 150; win = 1; } } diff --git a/modules/gameobject/windpeak.ts b/modules/gameobject/windpeak.ts new file mode 100644 index 0000000..9bf2b8c --- /dev/null +++ b/modules/gameobject/windpeak.ts @@ -0,0 +1,7 @@ +const TELEPORTER = 1000000; +const teleport: gameobject_event_on_use = (event, go: GameObject, player: Player) => { + player.Teleport(0, -5147.910845, 4024.771240, 59.303185, 5.775685); + return true; +}; + +RegisterGameObjectEvent(TELEPORTER, GameObjectEvents.GAMEOBJECT_EVENT_ON_USE, (...args) => teleport(...args)); \ No newline at end of file diff --git a/modules/items/book-of-travel.ts b/modules/items/book-of-travel.ts index f328f32..a7a6581 100644 --- a/modules/items/book-of-travel.ts +++ b/modules/items/book-of-travel.ts @@ -13,8 +13,8 @@ const TELEPORT_ITEM_ENTRY = 910006; const TeleportHandler: item_event_on_use = (event: number, player: Player, item: Item, target: Unit) => { - if(player.IsHorde()) { - const master = PerformIngameSpawn(1, 2851, player.GetMapId(), player.GetInstanceId(), player.GetX(), player.GetY(), player.GetZ(), player.GetO(), false, 1, 0) as Creature; + if(player.IsHorde()) { + const master = player.SpawnCreature(2851, player.GetX(), player.GetY(), player.GetZ(), player.GetO(), TempSummonType.TEMPSUMMON_MANUAL_DESPAWN); player.SendTaxiMenu(master); } else { const master = player.SpawnCreature(1571, player.GetX(), player.GetY(), player.GetZ(), player.GetO(), TempSummonType.TEMPSUMMON_MANUAL_DESPAWN); diff --git a/modules/items/vashj-fix.ts b/modules/items/vashj-fix.ts index 92d7bd1..78e1c8a 100644 --- a/modules/items/vashj-fix.ts +++ b/modules/items/vashj-fix.ts @@ -8,3 +8,60 @@ RegisterPlayerEvent( PlayerEvents.PLAYER_EVENT_ON_KILL_CREATURE, (...args) => TaintedKill(...args) ); + + +const healMe: creature_event_on_damage_taken = (event, creature, attacker, damage) => { + + creature.SetHealth(creature.GetMaxHealth()); + return false; +} + +const onSpawn: creature_event_on_spawn = (event, creature) => { + creature.SetMaxHealth(creature.GetMaxHealth() * 3); + return false; +} + +const onSpawn2: creature_event_on_spawn = (event, creature) => { + creature.SetMaxHealth(creature.GetMaxHealth() / 5); + return false; +} + +const onSpellHit: creature_event_on_spell_hit_target = (event, creature, target, spell) => { + return true; + +} + +const onDmg: creature_event_on_damage_taken = (event, creature, player, damage) => { + player.DealDamage(creature, damage * 10, false, 0); + return true; +} + +RegisterCreatureEvent( + 24891, + CreatureEvents.CREATURE_EVENT_ON_DAMAGE_TAKEN, + (...args) => healMe(...args) +) + +RegisterCreatureEvent( + 24891, + CreatureEvents.CREATURE_EVENT_ON_SPAWN, + (...args) => onSpawn(...args) +) + +RegisterCreatureEvent( + 25268, + CreatureEvents.CREATURE_EVENT_ON_SPAWN, + (...args) => onSpawn2(...args) +) + +RegisterCreatureEvent( + 25038, + CreatureEvents.CREATURE_EVENT_ON_SPELL_HIT_TARGET, + (...args) => onSpellHit(...args) +) + +RegisterCreatureEvent( + 25038, + CreatureEvents.CREATURE_EVENT_ON_DAMAGE_TAKEN, + (...args) => onDmg(...args) +) \ No newline at end of file