Skip to content

Commit

Permalink
Add Giant Mole (#524)
Browse files Browse the repository at this point in the history
* * Add burrowing animation for `Giant Mole`
* Add component ID to `warning_dark` interface
* Add `level_one_darkness`, `level_two_darkness`, `level_three_darkness` overlays for different strength of darkness
* Add stats for `Giant Mole` in `npcs.yml`
* Add new area called `giant_mole_lair` to `areas.yml`
* Add `Giant Mole` spawn to `npc-spawns.yml`
* Add `GiantMole.kts` to handle `Giant Moles` fight mechanics

* * Add `attack`, `hit`, and `death` animation for Giant Mole in `animations.yml`
* Add `dirt_on_screen` overlay to `interfaces.yml`
* Add `race: giant_mole` to `Giant Mole` in `npcs.yml`
* Add the `giant_mole_lair_escape_rope` object to `objects.yml`
* Extend boundary for `giant_mole_lair` to cover that whole area, before the north and south parts of the lair weren't included in the area
* Add `objectOperate` to `GiantMole.kts` to handle when a player climbs the rope.

* * Add animation `dirt_projectile` to `animation.yml`
* Add Graphic `burrow_dust` to `graphics.yml`
* Add `giant_mole_spawn_area` to `areas.yml` This seems to fix the issues with the mole spawning outside the playing area due to the north and south sides of the lair having walkable tiles outside the playable space.
* Add common drops for `giant_mole` to `drops.yml`
* Add the mechanic that allows the `giant mole` to burrow with a small chance to throw dirt on the players screen and extinguish any naked flames (candles)
* Changed the percentage of the `giant mole` burrowing chance back to 25%

* * Add animation `giant_mole_burrow_up` to `animation.yml`
* Remove redundant comment in `npcs.yml`
* Add sounds `giant_mole_burrow_down`, `giant_mole_attack`, `giant_mole_hit`, `giant_mole_burrow`, and `giant_mole_death` to `sounds.yml`
* Add complete drop table for `Giant mole` in `drops.yml`
* Remove redundant commends from `GiantMole.kts`
* Add `giant_mole_burrow_down` sound when the `Giant mole` burrow to a new location
* Add `mole_burrow_up` when the `Giant mole` has move to it's new location
* Add inventory check in a scenario where a player may drop their light source or was extinguished to then remove or apple the darkness overlay

* * Fix capitalization error in `animation.yml`
* Add `Baby Mole` spawns to `npcs-spawns.ym`
* Add `Baby Mole` to `npcs.yml`
* Change world timer checking to an NPC Clock
* Fix incorrect implementation of clearing current attacks on giant mole

* * Add mole `attackers clear` when stopping players attacking the mole

* * Change `inventoryOption` to include the item that is being used.
* Change `World.queue` to `mole.queue`

* * Change the directional choices for the mole to include northeast, northwest, southeast, and southwest options instead of just north, east, south, and west
* Add directional choices to be random

* Fix spade

---------

Co-authored-by: GregHib <[email protected]>
  • Loading branch information
Syntax2022 and GregHib authored May 1, 2024
1 parent fde0d64 commit 1099295
Show file tree
Hide file tree
Showing 10 changed files with 475 additions and 7 deletions.
7 changes: 7 additions & 0 deletions data/definitions/animations.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1668,3 +1668,10 @@ fletching_string_steel_crossbow: 6674
fletching_string_mithril_crossbow: 6675
fletching_string_adamant_crossbow: 6676
fletching_string_rune_crossbow: 6677
dig_with_spade: 830
giant_mole_burrow: 3314
giant_mole_attack: 3312
giant_mole_hit: 3311
giant_mole_death: 3310
dirt_projectile: 570
giant_mole_burrow_up: 1664
3 changes: 2 additions & 1 deletion data/definitions/graphics.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1480,4 +1480,5 @@ dragon_breath_shock:
delay: 51
flight_time: [ 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 ]
teleport_jewellery: 1684
teleport_pharaohs_sceptre: 715
teleport_pharaohs_sceptre: 715
burrow_dust: 571
19 changes: 18 additions & 1 deletion data/definitions/interfaces.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1756,7 +1756,12 @@ dialogue_multi2_mes:
type: dialogue_box
warning_spiders: 560
warning_kalphite_queen: 561
warning_dark: 562
warning_dark:
id: 562
type: main_screen
components:
proceed: 17
stayout: 18
warning_building_mode: 563
warning_archers: 564
warning_desert: 565
Expand Down Expand Up @@ -2517,3 +2522,15 @@ fade_in:
fade_out_smoke:
id: 162
type: overlay
level_one_darkness:
id: 97
type: overlay
level_two_darkness:
id: 98
type: overlay
level_three_darkness:
id: 96
type: overlay
dirt_on_screen:
id: 226
type: overlay
18 changes: 17 additions & 1 deletion data/definitions/npcs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1829,4 +1829,20 @@ al_the_camel:
race: camel
large_head: true
wander_radius: 4
examine: "A camel who has the soul of a poet."
examine: "A camel who has the soul of a poet."
giant_mole:
id: 3340
hitpoints: 2000
att: 200
str: 200
def: 200
max_hit_melee: 210
style: crush
race: giant_mole
respawn_delay: 16
wander_radius: 8
examine: "Holy Mole-y!"
baby_mole:
id: 3341
wander_radius: 6
examine: "I will call him, Mini Mole."
4 changes: 3 additions & 1 deletion data/definitions/objects.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11703,4 +11703,6 @@ prayer_altar_zaros:
examine: "Shrine to the glory of Zaros."
prayer_altar_warped_construction:
id: 55667
examine: "A shrine for the faithful to worship at."
examine: "A shrine for the faithful to worship at."
giant_mole_lair_escape_rope:
id: 12230
7 changes: 6 additions & 1 deletion data/definitions/sounds.yml
Original file line number Diff line number Diff line change
Expand Up @@ -194,4 +194,9 @@ knife_throw: 2707
thrown: 2708
godwars_saradomin_magic_impact: 3853
godwars_godsword_special_attack: 3865
pottery: 2588
pottery: 2588
giant_mole_burrow_down: 1641
giant_mole_attack: 1642
giant_mole_hit: 1646
giant_mole_burrow: 1643
giant_mole_death: 1645
12 changes: 11 additions & 1 deletion data/map/areas.yml
Original file line number Diff line number Diff line change
Expand Up @@ -977,4 +977,14 @@ camulet_teleport:
area:
x: [ 3192, 3194 ]
y: [ 2924, 2926 ]
tags: [ teleport ]
tags: [ teleport ]
giant_mole_lair:
area:
x: [ 1717, 1801 ]
y: [ 5123, 5252 ]
tags: [ boss ]
giant_mole_spawn_area:
area:
x: [ 1733, 1788 ]
y: [ 5150, 5223 ]
tags: [ boss ]
169 changes: 168 additions & 1 deletion data/spawns/drops.yml
Original file line number Diff line number Diff line change
Expand Up @@ -889,4 +889,171 @@ human_drop_table:
drops:
- type: all
drops:
- id: bones
- id: bones
giant_mole_drop_table:
type: all
drops:
- type: all
drops:
- id: big_bones
- id: mole_claw
- id: mole_skin
amount: 1-3
- roll: 6
drops:
- id: air_rune
amount: 105
chance: 1
- id: blood_rune
amount: 15
chance: 1
- roll: 11
drops:
- id: fire_rune
amount: 105
chance: 1
- roll: 12
drops:
- id: adamant_longsword
chance: 1
- id: iron_arrow
amount: 690
chance: 1
- id: yew_logs_noted
amount: 100
chance: 1
- roll: 14
drops:
- id: mithril_platebody
chance: 1
- roll: 18
drops:
- id: amulet_of_strength
chance: 1
- roll: 25
drops:
- id: law_rune
amount: 15
chance: 1
- roll: 32
drops:
- id: shark
amount: 4
chance: 1
- roll: 34
drops:
- id: nothing
chance: 1
- roll: 42
drops:
- id: mithril_bar
chance: 1
- id: death_rune
amount: 7
chance: 1
- roll: 64
drops:
- id: mithril_hatchet
chance: 1
- id: iron_ore_noted
amount: 100
chance: 1
- roll: 77
drops:
- id: uncut_sapphire
chance: 1
- roll: 128
drops:
- id: mithril_battleaxe
chance: 1
- id: rune_med_helm
chance: 1
- id: oyster_pearls
chance: 1
- roll: 154
drops:
- id: uncut_emerald
chance: 1
- roll: 189
drops:
- id: loop_half_of_a_key
chance: 1
- id: tooth_half_of_a_key
chance: 1
- roll: 195
drops:
- id: coins
amount: 3000
chance: 1
- roll: 309
drops:
- id: uncut_ruby
chance: 1
- roll: 819
drops:
- id: rune_bar
chance: 1
- roll: 824
drops:
- id: nature_talisman
chance: 1
- roll: 1237
drops:
- id: uncut_diamond
chance: 1
- roll: 1365
drops:
- id: nature_rune
amount: 67
chance: 1
- id: rune_2h_sword
chance: 1
- id: rune_battle_axe
chance: 1
- roll: 2048
drops:
- id: law_rune
amount: 45
chance: 1
- id: death_rune
amount: 45
chance: 1
- id: steel_arrow
amount: 150
chance: 1
- id: rune_arrow
amount: 42
chance: 1
- id: adamant_javelin
amount: 20
chance: 1
- id: rune_sq_shield
chance: 1
- id: dragonstone
chance: 1
- id: silver_ore_noted
amount: 100
chance: 1
- roll: 2473
drops:
- id: rune_javelin
amount: 5
chance: 1
- roll: 3935
drops:
- id: rune_spear
chance: 1
- roll: 4096
drops:
- id: rune_kiteshield
chance: 1
- id: dragon_med_helm
chance: 1
- roll: 7869
drops:
- id: shield_left_half
chance: 1
- roll: 10492
drops:
- id: dragon_spear
chance: 1
32 changes: 32 additions & 0 deletions data/spawns/npc-spawns.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,37 @@
# 6743
- { id: banker_fist_of_guthix, x: 1705, y: 5599 }
# 6993
- { id: giant_mole, x: 1762, y: 5185 }
- { id: baby_mole, x: 1763, y: 5163 }
- { id: baby_mole, x: 1760, y: 5167 }
- { id: baby_mole, x: 1759, y: 5161 }
- { id: baby_mole, x: 1764, y: 5184 }
- { id: baby_mole, x: 1759, y: 5193 }
- { id: baby_mole, x: 1758, y: 5184 }
- { id: baby_mole, x: 1756, y: 5179 }
- { id: baby_mole, x: 1741, y: 5186 }
- { id: baby_mole, x: 1754, y: 5197 }
- { id: baby_mole, x: 1761, y: 5197 }
- { id: baby_mole, x: 1774, y: 5204 }
- { id: baby_mole, x: 1782, y: 5217 }
- { id: baby_mole, x: 1781, y: 5232 }
- { id: baby_mole, x: 1771, y: 5220 }
- { id: baby_mole, x: 1763, y: 5215 }
- { id: baby_mole, x: 1756, y: 5221 }
- { id: baby_mole, x: 1741, y: 5220 }
- { id: baby_mole, x: 1738, y: 5209 }
- { id: baby_mole, x: 1744, y: 5205 }
- { id: baby_mole, x: 1751, y: 5207 }
- { id: baby_mole, x: 1755, y: 5199 }
- { id: baby_mole, x: 1774, y: 5174 }
- { id: baby_mole, x: 1777, y: 5188 }
- { id: baby_mole, x: 1775, y: 5194 }
- { id: baby_mole, x: 1775, y: 5166 }
- { id: baby_mole, x: 1762, y: 5151 }
- { id: baby_mole, x: 1778, y: 5149 }
- { id: baby_mole, x: 1744, y: 5151 }
- { id: baby_mole, x: 1737, y: 5157 }
- { id: baby_mole, x: 1748, y: 5168 }
# 7243
- { id: rat, x: 1816, y: 4836, level: 1, members: true }
- { id: rat, x: 1815, y: 4832, members: true }
Expand Down
Loading

0 comments on commit 1099295

Please sign in to comment.