diff --git a/code/modules/mining/lavaland/loot/colossus_loot.dm b/code/modules/mining/lavaland/loot/colossus_loot.dm index 14a1e5626f4..83d92437c44 100644 --- a/code/modules/mining/lavaland/loot/colossus_loot.dm +++ b/code/modules/mining/lavaland/loot/colossus_loot.dm @@ -308,7 +308,7 @@ activation_sound = 'sound/magic/timeparadox2.ogg' var/list/banned_items_typecache = list(/obj/item/storage, /obj/item/implant, /obj/item/implanter, /obj/item/disk/nuclear, /obj/item/projectile, /obj/item/spellbook, /obj/item/clothing/mask/facehugger, /obj/item/contractor_uplink, - /obj/item/dice/d20/fate) + /obj/item/dice/d20/fate, /obj/item/gem) //////suda ebat /obj/machinery/anomalous_crystal/refresher/New() ..() diff --git a/code/modules/mob/living/simple_animal/hostile/mining/basilisk.dm b/code/modules/mob/living/simple_animal/hostile/mining/basilisk.dm index ac8f636cee5..68edfcbcb3d 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining/basilisk.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining/basilisk.dm @@ -82,15 +82,20 @@ crusher_loot = /obj/item/crusher_trophy/watcher_wing loot = list() butcher_results = list(/obj/item/stack/ore/diamond = 2, /obj/item/stack/sheet/sinew = 2, /obj/item/stack/sheet/bone = 1) + var/jewelry_loot = null -/mob/living/simple_animal/hostile/asteroid/basilisk/watcher/random/Initialize(mapload) +/mob/living/simple_animal/hostile/asteroid/basilisk/watcher/Initialize(mapload) . = ..() - if(prob(40)) //60 for classic, 20/20 for magma and ice - if(prob(50)) - new /mob/living/simple_animal/hostile/asteroid/basilisk/watcher/magmawing(loc) - else - new /mob/living/simple_animal/hostile/asteroid/basilisk/watcher/icewing(loc) - return INITIALIZE_HINT_QDEL + if(prob(70) && jewelry_loot) + jewelry_loot = null + +/mob/living/simple_animal/hostile/asteroid/basilisk/watcher/death(gibbed) + if(!fromtendril && && jewelry_loot) + var/obj/gem = new jewelry_loot(loc) + deathmessage = "spits out a [gem.name] as it dies!" + jewelry_loot = null + . = ..() + deathmessage = initial(deathmessage) /mob/living/simple_animal/hostile/asteroid/basilisk/watcher/magmawing name = "magmawing watcher" @@ -105,6 +110,7 @@ light_power = 2.5 light_color = LIGHT_COLOR_LAVA projectiletype = /obj/item/projectile/temp/basilisk/magmawing + jewelry_loot = /obj/item/gem/magma crusher_loot = /obj/item/crusher_trophy/blaster_tubes/magma_wing crusher_drop_mod = 60 @@ -119,9 +125,19 @@ health = 170 projectiletype = /obj/item/projectile/temp/basilisk/icewing butcher_results = list(/obj/item/stack/ore/diamond = 5, /obj/item/stack/sheet/bone = 1) //No sinew; the wings are too fragile to be usable + jewelry_loot = /obj/item/gem/fdiamond crusher_loot = /obj/item/crusher_trophy/watcher_wing/ice_wing crusher_drop_mod = 60 +/mob/living/simple_animal/hostile/asteroid/basilisk/watcher/random/Initialize(mapload) + . = ..() + if(prob(40)) //60 for classic, 20/20 for magma and ice + if(prob(50)) + new /mob/living/simple_animal/hostile/asteroid/basilisk/watcher/magmawing(loc) + else + new /mob/living/simple_animal/hostile/asteroid/basilisk/watcher/icewing(loc) + return INITIALIZE_HINT_QDEL + /obj/item/projectile/watcher name = "stunning blast" icon_state = "temp_0" @@ -181,17 +197,3 @@ /mob/living/simple_animal/hostile/asteroid/basilisk/watcher/magmawing/tendril fromtendril = TRUE - -/mob/living/simple_animal/hostile/asteroid/basilisk/watcher/icewing/death(gibbed) - if(prob(30) && !fromtendril) - new /obj/item/gem/fdiamond(loc) - deathmessage = "spits out a diamond as it dies!" - . = ..() - deathmessage = initial(deathmessage) - -/mob/living/simple_animal/hostile/asteroid/basilisk/watcher/magmawing/death(gibbed) - if(prob(30) && !fromtendril) - new /obj/item/gem/magma(loc) - deathmessage = "spits out a golden gem as it dies!" - . = ..() - deathmessage = initial(deathmessage)