mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-28 23:58:07 +01:00
Hopefully the final pass of initial tweaks and fixes for summon events
*Reworks teleporation so change places doesn't leave people distantly locked to chairs *Adds a sanity check for improved spellcasting for some badmin abuse *Delays zombie outbreak from occuring until 20 minutes into the round because it was often occuring before there was ample dead *Removes the earmuffs from the cursed items loadout for being neither fun nor useful to anyone *Removes the fake explosion from summon events for losing its appeal once it was expected, it still exists as a badmin event though. *Reels in the 4th wall shattering nature of the greentext a bit *Adds a message to affected people for Change Races, since some people are so decked out in gear they wouldn't even notice anything had happened *Fixes change names to actually work *Rewrites change minds to avoid edge cases where some people could be swapped twice back into their original body
This commit is contained in:
@@ -34,6 +34,8 @@
|
||||
for(var/obj/effect/proc_holder/spell/S in L.mind.spell_list)
|
||||
S.name = initial(S.name)
|
||||
S.spell_level++
|
||||
if(S.spell_level >= 6 || S.charge_max <= 0) //Badmin checks, these should never be a problem in normal play
|
||||
continue
|
||||
S.charge_max = round(initial(S.charge_max) - S.spell_level * (initial(S.charge_max) - S.cooldown_min)/ S.level_max)
|
||||
if(S.charge_max < S.charge_counter)
|
||||
S.charge_counter = S.charge_max
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
weight = 3
|
||||
typepath = /datum/round_event/wizard/blobies/
|
||||
max_occurrences = 3
|
||||
earliest_start = 0
|
||||
earliest_start = 12000 // 20 minutes (gotta get some bodies made!)
|
||||
|
||||
/datum/round_event/wizard/blobies/start()
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
//item you want to equip to the hand, and set its slots_flags = null. Only items equiped to hands need do this.
|
||||
|
||||
/datum/round_event/wizard/cursed_items/start()
|
||||
var/item_set = pick("wizardmimic", "swords", "bigfatdoobie", "boxing", "voicemodulators", "headphones")
|
||||
var/item_set = pick("wizardmimic", "swords", "bigfatdoobie", "boxing", "voicemodulators")
|
||||
var/list/wearslots = list(slot_wear_suit, slot_shoes, slot_head, slot_wear_mask, slot_r_hand, slot_gloves, slot_ears)
|
||||
var/list/loadout = list()
|
||||
var/ruins_spaceworthiness
|
||||
@@ -29,7 +29,6 @@
|
||||
loadout[6] = /obj/item/clothing/gloves/boxing
|
||||
ruins_spaceworthiness = 1
|
||||
if("voicemodulators") loadout[4] = /obj/item/clothing/mask/gas/voice
|
||||
if("headphones") loadout[7] = /obj/item/clothing/ears/earmuffs
|
||||
|
||||
for(var/mob/living/carbon/human/H in living_mob_list)
|
||||
if(ruins_spaceworthiness && (H.z != 1 || istype(H.loc, /turf/space))) continue //#savetheminers
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/datum/round_event_control/wizard/fake_explosion //Oh no the station is gone!
|
||||
name = "Fake Explosion"
|
||||
weight = 2
|
||||
weight = 0 //Badmin exclusive now because once it's expected its not funny
|
||||
typepath = /datum/round_event/wizard/fake_explosion/
|
||||
max_occurrences = 1
|
||||
earliest_start = 0
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
/obj/item/weapon/greentext/
|
||||
name = "greentext"
|
||||
desc = "for some the pursuit of greentext is the greatest calling in life..."
|
||||
desc = "No one knows what this massive tome does, but it feels <i><font color='green'>desirable</font></i> all the same..."
|
||||
w_class = 4.0
|
||||
icon = 'icons/obj/wizard.dmi'
|
||||
icon_state = "greentext"
|
||||
|
||||
@@ -18,5 +18,6 @@
|
||||
if(H.dna)
|
||||
H.dna.species = new new_species
|
||||
H.regenerate_icons()
|
||||
H << "<span class='notice'>You feel somehow... different?</span>"
|
||||
if(!all_the_same)
|
||||
new_species = pick(all_species)
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
for(var/mob/living/carbon/human/H in mobs)
|
||||
if(!moblocs) break //locs aren't always unique, so this may come into play
|
||||
H.loc = moblocs[moblocs.len]
|
||||
do_teleport(H, moblocs[moblocs.len])
|
||||
moblocs.len -= 1
|
||||
|
||||
for(var/mob/living/carbon/human/H in living_mob_list)
|
||||
@@ -46,7 +46,7 @@
|
||||
var/list/mobs = list()
|
||||
|
||||
for(var/mob/living/carbon/human/H in living_mob_list)
|
||||
mobnames += H.name
|
||||
mobnames += H.real_name
|
||||
mobs += H
|
||||
|
||||
if(!mobs) return
|
||||
@@ -56,7 +56,7 @@
|
||||
|
||||
for(var/mob/living/carbon/human/H in mobs)
|
||||
if(!mobnames) break
|
||||
H.name = mobnames[mobnames.len]
|
||||
H.real_name = mobnames[mobnames.len]
|
||||
mobnames.len -= 1
|
||||
|
||||
for(var/mob/living/carbon/human/H in living_mob_list)
|
||||
@@ -85,10 +85,11 @@
|
||||
shuffle(mobs)
|
||||
|
||||
var/obj/effect/proc_holder/spell/targeted/mind_transfer/swapper = new /obj/effect/proc_holder/spell/targeted/mind_transfer/
|
||||
for(var/mob/living/carbon/human/H in mobs)
|
||||
while(mobs.len > 1)
|
||||
var/mob/living/carbon/human/H = pick(mobs)
|
||||
mobs -= H
|
||||
swapper.cast(list(H), mobs[mobs.len], 1)
|
||||
mobs.len -= 1
|
||||
if(mobs.len <= 1) break
|
||||
mobs -= mobs[mobs.len]
|
||||
|
||||
for(var/mob/living/carbon/human/H in living_mob_list)
|
||||
var/datum/effect/effect/system/harmless_smoke_spread/smoke = new /datum/effect/effect/system/harmless_smoke_spread()
|
||||
|
||||
Reference in New Issue
Block a user