Merge pull request #9701 from Cuboos/SoundsEp2_WizardBoogaloo

Wizard Sounds has the update. Been a bit since i've done a commit, so…
This commit is contained in:
Cheridan
2015-05-31 15:51:59 -05:00
61 changed files with 90 additions and 16 deletions
+5
View File
@@ -10,6 +10,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin
name = "Spell"
desc = "A wizard spell"
panel = "Spells"
var/sound = "sound/weapons/badZap.ogg"
anchored = 1 // Crap like fireball projectiles are proc_holders, this is needed so fireballs don't get blown back into your face via atmos etc.
pass_flags = PASSTABLE
density = 0
@@ -136,6 +137,9 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin
if("emote")
user.visible_message(invocation, invocation_emote_self) //same style as in mob/living/emote.dm
/obj/effect/proc_holder/spell/proc/playMagSound()
playsound(get_turf(usr), sound,50,1)
/obj/effect/proc_holder/spell/New()
..()
@@ -256,6 +260,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin
var/random_target = 0 // chooses random viable target instead of asking the caster
var/random_target_priority = TARGET_CLOSEST // if random_target is enabled how it will pick the target
/obj/effect/proc_holder/spell/aoe_turf //affects all turfs in view or range (depends)
var/inner_radius = -1 //for all your ring spell needs
+4
View File
@@ -5,6 +5,8 @@
var/randomise_selection = 0 //if it lets the usr choose the teleport loc or picks it from the list
var/invocation_area = 1 //if the invocation appends the selected area
var/sound1 = "sound/weapons/ZapBang.ogg"
var/sound2 = "sound/weapons/ZapBang.ogg"
/obj/effect/proc_holder/spell/targeted/area_teleport/perform(list/targets, recharge = 1)
var/thearea = before_cast(targets)
@@ -31,6 +33,7 @@
return thearea
/obj/effect/proc_holder/spell/targeted/area_teleport/cast(list/targets,area/thearea)
playsound(get_turf(usr), sound1, 50,1)
for(var/mob/living/target in targets)
var/list/L = list()
for(var/turf/T in get_area_turfs(thearea.type))
@@ -64,6 +67,7 @@
if(!success)
target.loc = pick(L)
playsound(get_turf(usr), sound2, 50,1)
return
+7 -1
View File
@@ -31,7 +31,12 @@
user << "<span class='notice'>They are too far away!</span>"
return
var/choice = pick(/obj/item/clothing/mask/spig, /obj/item/clothing/mask/cowmask, /obj/item/clothing/mask/horsehead)
var/list/masks = list(/obj/item/clothing/mask/spig, /obj/item/clothing/mask/cowmask, /obj/item/clothing/mask/horsehead)
var/list/mSounds = list("sound/magic/PigHead_curse.ogg", "sound/magic/CowHead_Curse.ogg", "sound/magic/HorseHead_curse.ogg")
var/randM = rand(1,3)
var/choice = masks[randM]
var/obj/item/clothing/mask/magichead = new choice
magichead.flags |=NODROP
magichead.flags_inv = null
@@ -40,5 +45,6 @@
if(!target.unEquip(target.wear_mask))
qdel(target.wear_mask)
target.equip_to_slot_if_possible(magichead, slot_wear_mask, 1, 1)
playsound(get_turf(target), mSounds[randM], 50, 1)
flick("e_flash", target.flash)
+1
View File
@@ -85,4 +85,5 @@
else if(burnt_out)
user << "<span class='caution'>[charged_item] doesn't seem to be reacting to the spell...</span>"
else
playsound(get_turf(usr), "sound/magic/Charge.ogg", 50, 1)
user << "<span class='notice'>[charged_item] suddenly feels very warm!</span>"
+1 -4
View File
@@ -16,14 +16,11 @@
var/cast_sound = 'sound/items/welder.ogg'
/obj/effect/proc_holder/spell/aoe_turf/conjure/cast(list/targets)
playsound(get_turf(usr), cast_sound, 50,1)
for(var/turf/T in targets)
if(T.density && !summon_ignore_density)
targets -= T
if(cast_sound)
playsound(src.loc, cast_sound, 50, 1)
for(var/i=0,i<summon_amt,i++)
if(!targets.len)
break
+1 -1
View File
@@ -31,7 +31,7 @@
perform(list(T))
/obj/effect/proc_holder/spell/dumbfire/cast(list/targets, mob/user = usr)
playMagSound()
for(var/turf/target in targets)
spawn(0)
var/obj/effect/proc_holder/spell/targeted/projectile
+2 -1
View File
@@ -6,9 +6,10 @@
var/emp_light = 3
action_icon_state = "emp"
sound = "sound/weapons/ZapBang.ogg"
/obj/effect/proc_holder/spell/targeted/emplosion/cast(list/targets)
playsound(get_turf(usr), sound, 50,1)
for(var/mob/living/target in targets)
empulse(target.loc, emp_heavy, emp_light)
+4
View File
@@ -16,6 +16,7 @@
action_icon_state = "jaunt"
/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/cast(list/targets) //magnets, so mostly hardcoded
playsound(get_turf(usr), 'sound/magic/Ethereal_Enter.ogg', 50, 1, -1)
for(var/mob/living/target in targets)
target.notransform = 1 //protects the mob from being transformed (replaced) midjaunt and getting stuck in bluespace
spawn(0)
@@ -44,6 +45,7 @@
jaunt_steam(mobloc)
target.canmove = 0
holder.reappearing = 1
playsound(get_turf(usr), 'sound/magic/Ethereal_Exit.ogg', 50, 1, -1)
sleep(20)
jaunt_reappear(animation, target)
sleep(5)
@@ -62,9 +64,11 @@
animation.icon_state = "liquify"
flick("liquify",animation)
/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/proc/jaunt_reappear(var/atom/movable/overlay/animation, var/mob/living/target)
flick("reappear",animation)
/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/proc/jaunt_steam(var/mobloc)
var/datum/effect/effect/system/steam_spread/steam = new /datum/effect/effect/system/steam_spread()
steam.set_up(10, 0, mobloc)
+1 -1
View File
@@ -16,7 +16,7 @@
*/
/obj/effect/proc_holder/spell/targeted/genetic/cast(list/targets)
playMagSound()
for(var/mob/living/carbon/target in targets)
for(var/A in mutations)
target.dna.add_mutation(A)
+1
View File
@@ -22,6 +22,7 @@
/obj/effect/proc_holder/spell/targeted/inflict_handler/cast(list/targets)
for(var/mob/living/target in targets)
playsound(target,sound, 50,1)
switch(destroys)
if("gib")
target.gib()
+2
View File
@@ -13,10 +13,12 @@
action_icon_state = "knock"
/obj/effect/proc_holder/spell/aoe_turf/knock/cast(list/targets)
usr << sound("sound/magic/Knock.ogg")
for(var/turf/T in targets)
for(var/obj/machinery/door/door in T.contents)
spawn(1)
if(istype(door,/obj/machinery/door/airlock))
door:locked = 0
door.open()
return
+10 -5
View File
@@ -13,6 +13,7 @@
var/energy = 0
var/ready = 0
var/image/halo = null
var/sound/Snd // so far only way i can think of to stop a sound, thank MSO for the idea.
action_icon_state = "lightning"
@@ -28,8 +29,10 @@
/obj/effect/proc_holder/spell/targeted/lightning/proc/StartChargeup(mob/user = usr)
ready = 1
user << "<span class='notice'>You start gathering the power.</span>"
Snd = new/sound('sound/magic/lightning_chargeup.ogg',channel = 7)
halo = image("icon"='icons/effects/effects.dmi',"icon_state" ="electricity","layer" = EFFECTS_LAYER)
user.overlays.Add(halo)
playsound(get_turf(usr), Snd, 50, 0)
spawn(0)
while(ready)
energy++
@@ -59,21 +62,23 @@ obj/effect/proc_holder/spell/targeted/lightning/proc/Reset(mob/user = usr)
/obj/effect/proc_holder/spell/targeted/lightning/cast(list/targets, mob/user = usr)
ready = 0
var/mob/living/carbon/target = targets[1]
Snd=sound(null, repeat = 0, wait = 1, channel = Snd.channel) //byond, why you suck?
playsound(get_turf(usr),Snd,50,0)// Sorry MrPerson, but the other ways just didn't do it the way i needed to work, this is the only way.
if(get_dist(user,target)>range)
user << "<span class='notice'>They are too far away!</span>"
Reset(user)
return
playsound(get_turf(usr), 'sound/magic/lightningbolt.ogg', 50, 1)
user.Beam(target,icon_state="lightning",icon='icons/effects/effects.dmi',time=5)
switch(energy)
if(1 to 25)
target.electrocute_act(10,"Lightning Bolt")
playsound(get_turf(target), 'sound/machines/defib_zap.ogg', 50, 1, -1)
playsound(get_turf(target), 'sound/magic/LightningShock.ogg', 50, 1, -1)
if(25 to 75)
target.electrocute_act(25,"Lightning Bolt")
playsound(get_turf(target), 'sound/machines/defib_zap.ogg', 50, 1, -1)
playsound(get_turf(target), 'sound/magic/LightningShock.ogg', 50, 1, -1)
if(75 to 100)
//CHAIN LIGHTNING
Bolt(user,target,energy,user)
@@ -84,10 +89,10 @@ obj/effect/proc_holder/spell/targeted/lightning/proc/Reset(mob/user = usr)
var/mob/living/carbon/current = target
if(bolt_energy < 75)
current.electrocute_act(25,"Lightning Bolt")
playsound(get_turf(current), 'sound/machines/defib_zap.ogg', 50, 1, -1)
playsound(get_turf(current), 'sound/magic/LightningShock.ogg', 50, 1, -1)
else
current.electrocute_act(25,"Lightning Bolt")
playsound(get_turf(current), 'sound/machines/defib_zap.ogg', 50, 1, -1)
playsound(get_turf(current), 'sound/magic/LightningShock.ogg', 50, 1, -1)
var/list/possible_targets = new
for(var/mob/living/M in view_or_range(range,target,"view"))
if(user == M || target == M && los_check(current,M)) // || origin == M ? Not sure double shockings is good or not
+2
View File
@@ -77,3 +77,5 @@ Also, you never added distance checking after target is selected. I've went ahea
//Here we paralyze both mobs and knock them out for a time.
caster.Paralyse(paralysis_amount_caster)
victim.Paralyse(paralysis_amount_victim)
caster << sound('sound/magic/MandSwap.ogg')
victim << sound('sound/magic/MandSwap.ogg')// only the caster and victim hear the sounds, that way no one knows for sure if the swap happened
+2 -1
View File
@@ -11,6 +11,7 @@
var/proj_trail_icon = 'icons/obj/wizard.dmi'
var/proj_trail_icon_state = "trail"
var/proj_type = "/obj/effect/proc_holder/spell/targeted" //IMPORTANT use only subtypes of this
var/proj_lingering = 0 //if it lingers or disappears upon hitting an obstacle
@@ -22,7 +23,7 @@
var/proj_step_delay = 1 //lower = faster
/obj/effect/proc_holder/spell/targeted/projectile/cast(list/targets, mob/user = usr)
playMagSound()
for(var/mob/living/target in targets)
spawn(0)
var/obj/effect/proc_holder/spell/targeted/projectile
+4 -1
View File
@@ -104,8 +104,11 @@
if(butterfingers)
item_to_retrive.loc = user.loc
item_to_retrive.loc.visible_message("<span class='caution'>The [item_to_retrive.name] suddenly appears!</span>")
playsound(get_turf(user),"sound/magic/SummonItems_generic.ogg",50,1)
else
item_to_retrive.loc.visible_message("<span class='caution'>The [item_to_retrive.name] suddenly appears in [user]'s hand!</span>")
playsound(get_turf(user),"sound/magic/SummonItems_generic.ogg",50,1)
if(message)
user << message
user << message
+1
View File
@@ -20,6 +20,7 @@
..()
/obj/effect/proc_holder/spell/targeted/trigger/cast(list/targets)
playMagSound()
for(var/mob/living/target in targets)
for(var/obj/effect/proc_holder/spell/spell in contents)
spell.perform(list(target),0)
+4
View File
@@ -8,8 +8,11 @@
var/include_space = 0 //whether it includes space tiles in possible teleport locations
var/include_dense = 0 //whether it includes dense tiles in possible teleport locations
var/sound1 = "sound/weapons/ZapBang.ogg"
var/sound2 = "sound/weapons/ZapBang.ogg"
/obj/effect/proc_holder/spell/targeted/turf_teleport/cast(list/targets)
playsound(get_turf(usr), sound1, 50,1)
for(var/mob/living/target in targets)
var/list/turfs = new/list()
for(var/turf/T in range(target,outer_tele_radius))
@@ -34,3 +37,4 @@
if(!target.Move(picked))
target.loc = picked
playsound(get_turf(usr), sound2, 50,1)
+20
View File
@@ -25,10 +25,12 @@
proj_trail_icon_state = "magicmd"
action_icon_state = "magicm"
sound = "sound/magic/MAGIC_MISSILE.ogg"
/obj/effect/proc_holder/spell/targeted/inflict_handler/magic_missile
amt_weakened = 3
amt_dam_fire = 10
sound = "sound/magic/MM_Hit.ogg"
/obj/effect/proc_holder/spell/targeted/genetic/mutate
name = "Mutate"
@@ -49,6 +51,7 @@
cooldown_min = 300 //25 deciseconds reduction per rank
action_icon_state = "mutate"
sound = "sound/magic/Mutate.ogg"
/obj/effect/proc_holder/spell/targeted/inflict_handler/disintegrate
name = "Disintegrate"
@@ -68,6 +71,7 @@
sparks_amt = 4
action_icon_state = "gib"
sound = "sound/magic/Disintegrate.ogg"
/obj/effect/proc_holder/spell/targeted/smoke
name = "Smoke"
@@ -100,6 +104,7 @@
emp_heavy = 6
emp_light = 10
sound = "sound/magic/Disable_Tech.ogg"
/obj/effect/proc_holder/spell/targeted/turf_teleport/blink
name = "Blink"
@@ -124,6 +129,8 @@
centcom_cancast = 0 //prevent people from getting to centcom
action_icon_state = "blink"
sound1="sound/magic/blink.ogg"
sound2="sound/magic/blink.ogg"
/obj/effect/proc_holder/spell/targeted/area_teleport/teleport
name = "Teleport"
@@ -140,6 +147,8 @@
smoke_spread = 1
smoke_amt = 5
sound1="sound/magic/Teleport_diss.ogg"
sound2="sound/magic/Teleport_app.ogg"
/obj/effect/proc_holder/spell/aoe_turf/conjure/forcewall
name = "Forcewall"
@@ -157,6 +166,7 @@
summon_lifespan = 300
action_icon_state = "shield"
cast_sound = "sound/magic/ForceWall.ogg"
/obj/effect/proc_holder/spell/aoe_turf/conjure/carp
@@ -171,6 +181,7 @@
range = 1
summon_type = list(/mob/living/simple_animal/hostile/carp)
cast_sound = "sound/magic/Summon_Karp.ogg"
/obj/effect/proc_holder/spell/aoe_turf/conjure/construct
@@ -187,6 +198,7 @@
summon_type = list(/obj/structure/constructshell)
action_icon_state = "artificer"
cast_sound = "sound/magic/SummonItems_generic.ogg"
/obj/effect/proc_holder/spell/aoe_turf/conjure/creature
@@ -202,6 +214,7 @@
range = 3
summon_type = list(/mob/living/simple_animal/hostile/creature)
cast_sound = "sound/magic/SummonItems_generic.ogg"
/obj/effect/proc_holder/spell/targeted/trigger/blind
name = "Blind"
@@ -219,13 +232,17 @@
action_icon_state = "blind"
/obj/effect/proc_holder/spell/targeted/inflict_handler/blind
amt_eye_blind = 10
amt_eye_blurry = 20
sound="sound/magic/Blind.ogg"
/obj/effect/proc_holder/spell/targeted/genetic/blind
disabilities = 1
duration = 300
sound="sound/magic/Blind.ogg"
/obj/effect/proc_holder/spell/targeted/inflict_handler/flesh_to_stone
name = "Flesh to Stone"
@@ -243,6 +260,7 @@
summon_type = "/obj/structure/closet/statue"
action_icon_state = "statue"
sound = "sound/magic/FleshToStone.ogg"
/obj/effect/proc_holder/spell/dumbfire/fireball
name = "Fireball"
@@ -264,6 +282,7 @@
proj_step_delay = 1
action_icon_state = "fireball"
sound = "sound/magic/Fireball.ogg"
/obj/effect/proc_holder/spell/turf/fireball/cast(var/turf/T)
explosion(T, -1, 0, 2, 3, 0, flame_range = 2)
@@ -298,6 +317,7 @@
var/list/thrownatoms = list()
var/atom/throwtarget
var/distfromcaster
playsound(user, "sound/magic/Repulse.ogg", 50, 1, -1)
for(var/turf/T in targets) //Done this way so things don't get thrown all around hilariously.
for(var/atom/movable/AM in T)
thrownatoms += AM