mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-30 23:48:28 +01:00
EXTREMELY buggy Ninja code
This commit is contained in:
@@ -512,6 +512,11 @@ proc/process_ghost_teleport_locs()
|
||||
icon_state = "yellow"
|
||||
requires_power = 0
|
||||
|
||||
/area/ninja_outpost
|
||||
name = "\improper SpiderClan Outpost"
|
||||
icon_state = "ninjabase"
|
||||
requires_power = 0
|
||||
|
||||
/area/vox_station/transit
|
||||
name = "\improper hyperspace"
|
||||
icon_state = "shuttle"
|
||||
|
||||
@@ -78,26 +78,29 @@ Not sure why this would be useful (it's not) but whatever. Ninjas need their smo
|
||||
var/mob/living/carbon/human/U = affecting
|
||||
var/turf/destination = get_teleport_loc(U.loc,U,9,1,3,1,0,1)
|
||||
var/turf/mobloc = get_turf(U.loc)//To make sure that certain things work properly below.
|
||||
if(destination&&istype(mobloc, /turf))//The turf check prevents unusual behavior. Like teleporting out of cryo pods, cloners, mechs, etc.
|
||||
spawn(0)
|
||||
playsound(U.loc, "sparks", 50, 1)
|
||||
anim(mobloc,src,'icons/mob/mob.dmi',,"phaseout",,U.dir)
|
||||
if(mobloc.loc != /area/ninja_outpost)
|
||||
if(destination&&istype(mobloc, /turf))//The turf check prevents unusual behavior. Like teleporting out of cryo pods, cloners, mechs, etc.
|
||||
spawn(0)
|
||||
playsound(U.loc, "sparks", 50, 1)
|
||||
anim(mobloc,src,'icons/mob/mob.dmi',,"phaseout",,U.dir)
|
||||
|
||||
handle_teleport_grab(destination, U)
|
||||
U.loc = destination
|
||||
handle_teleport_grab(destination, U)
|
||||
U.loc = destination
|
||||
|
||||
spawn(0)
|
||||
spark_system.start()
|
||||
playsound(U.loc, 'sound/effects/phasein.ogg', 25, 1)
|
||||
playsound(U.loc, "sparks", 50, 1)
|
||||
anim(U.loc,U,'icons/mob/mob.dmi',,"phasein",,U.dir)
|
||||
spawn(0)
|
||||
spark_system.start()
|
||||
playsound(U.loc, 'sound/effects/phasein.ogg', 25, 1)
|
||||
playsound(U.loc, "sparks", 50, 1)
|
||||
anim(U.loc,U,'icons/mob/mob.dmi',,"phasein",,U.dir)
|
||||
|
||||
//spawn(0)
|
||||
//destination.kill_creatures(U)//Any living mobs in teleport area are gibbed. Check turf procs for how it does it.
|
||||
s_coold = 1
|
||||
cell.charge-=(C)
|
||||
//spawn(0)
|
||||
//destination.kill_creatures(U)//Any living mobs in teleport area are gibbed. Check turf procs for how it does it.
|
||||
s_coold = 1
|
||||
cell.charge-=(C)
|
||||
else
|
||||
U << "\red The VOID-shift device is malfunctioning, <B>teleportation failed</B>."
|
||||
else
|
||||
U << "\red The VOID-shift device is malfunctioning, <B>teleportation failed</B>."
|
||||
U<< "\red Your <b>NINJA HONOR</b> prevents you from teleporting here!"
|
||||
return
|
||||
|
||||
|
||||
@@ -114,26 +117,29 @@ Not sure why this would be useful (it's not) but whatever. Ninjas need their smo
|
||||
if(!ninjacost(C,1))
|
||||
var/mob/living/carbon/human/U = affecting
|
||||
var/turf/mobloc = get_turf(U.loc)//To make sure that certain things work properly below.
|
||||
if((!T.density)&&istype(mobloc, /turf))
|
||||
spawn(0)
|
||||
playsound(U.loc, 'sound/effects/sparks4.ogg', 50, 1)
|
||||
anim(mobloc,src,'icons/mob/mob.dmi',,"phaseout",,U.dir)
|
||||
if(mobloc.loc != /area/ninja_outpost)
|
||||
if((!T.density)&&istype(mobloc, /turf))
|
||||
spawn(0)
|
||||
playsound(U.loc, 'sound/effects/sparks4.ogg', 50, 1)
|
||||
anim(mobloc,src,'icons/mob/mob.dmi',,"phaseout",,U.dir)
|
||||
|
||||
handle_teleport_grab(T, U)
|
||||
U.loc = T
|
||||
handle_teleport_grab(T, U)
|
||||
U.loc = T
|
||||
|
||||
spawn(0)
|
||||
spark_system.start()
|
||||
playsound(U.loc, 'sound/effects/phasein.ogg', 25, 1)
|
||||
playsound(U.loc, 'sound/effects/sparks2.ogg', 50, 1)
|
||||
anim(U.loc,U,'icons/mob/mob.dmi',,"phasein",,U.dir)
|
||||
spawn(0)
|
||||
spark_system.start()
|
||||
playsound(U.loc, 'sound/effects/phasein.ogg', 25, 1)
|
||||
playsound(U.loc, 'sound/effects/sparks2.ogg', 50, 1)
|
||||
anim(U.loc,U,'icons/mob/mob.dmi',,"phasein",,U.dir)
|
||||
|
||||
//spawn(0) // Commented out for now, possible implementation in a later upgrade tree.
|
||||
//T.kill_creatures(U)
|
||||
s_coold = 1
|
||||
cell.charge-=(C)
|
||||
//spawn(0) // Commented out for now, possible implementation in a later upgrade tree.
|
||||
//T.kill_creatures(U)
|
||||
s_coold = 1
|
||||
cell.charge-=(C)
|
||||
else
|
||||
U << "\red You cannot teleport into solid walls or from solid matter"
|
||||
else
|
||||
U << "\red You cannot teleport into solid walls or from solid matter"
|
||||
U<< "\red Your <b>NINJA HONOR</b> prevents you from teleporting here!"
|
||||
return
|
||||
|
||||
//=======//EM PULSE//=======//
|
||||
@@ -328,11 +334,11 @@ Or otherwise known as anime mode. Which also happens to be ridiculously powerful
|
||||
set desc = "Utilizes the internal VOID-shift device to mutilate creatures in a straight line."
|
||||
set category = "Ninja Ability"
|
||||
set popup_menu = 0
|
||||
|
||||
if(!ninjacost())
|
||||
var/mob/living/carbon/human/U = affecting
|
||||
var/turf/destination = get_teleport_loc(U.loc,U,5)
|
||||
var/turf/mobloc = get_turf(U.loc)//To make sure that certain things work properly below.
|
||||
|
||||
if(destination&&istype(mobloc, /turf))
|
||||
U.say("Ai Satsugai!")
|
||||
spawn(0)
|
||||
|
||||
@@ -501,6 +501,7 @@ ________________________________________________________________________________
|
||||
var/mob/living/carbon/human/U = affecting
|
||||
var/mob/living/silicon/ai/A = AI
|
||||
var/display_to = s_control ? U : A//Who do we want to display certain messages to?
|
||||
var/turf/mobloc // For use later on during a check in Kamikaze
|
||||
|
||||
if(s_control)
|
||||
if(!affecting||U.stat||!s_initialized)//Check to make sure the guy is wearing the suit after clicking and it's on.
|
||||
@@ -594,31 +595,35 @@ ________________________________________________________________________________
|
||||
|
||||
if("Unlock Kamikaze")
|
||||
if(input(U)=="Divine Wind")
|
||||
if( !(U.stat||U.wear_suit!=src||!s_initialized) )
|
||||
if( !(cell.charge<=1||s_busy) )
|
||||
s_busy = 1
|
||||
for(var/i, i<4, i++)
|
||||
switch(i)
|
||||
if(0)
|
||||
U << "\blue Engaging mode...\n\black<b>CODE NAME</b>: \red <b>KAMIKAZE</b>"
|
||||
if(1)
|
||||
U << "\blue Re-routing power nodes... \nUnlocking limiter..."
|
||||
if(2)
|
||||
U << "\blue Power nodes re-routed. \nLimiter unlocked."
|
||||
if(3)
|
||||
grant_kamikaze(U)//Give them verbs and change variables as necessary.
|
||||
U.regenerate_icons()//Update their clothing.
|
||||
ninjablade()//Summon two energy blades.
|
||||
message_admins("\blue [key_name_admin(U)] used KAMIKAZE mode.")//Let the admins know.
|
||||
s_busy = 0
|
||||
return
|
||||
sleep(s_delay)
|
||||
mobloc = get_turf(U.loc)
|
||||
if(mobloc.loc != /area/ninja_outpost)
|
||||
if( !(U.stat||U.wear_suit!=src||!s_initialized))
|
||||
if( !(cell.charge<=1||s_busy) )
|
||||
s_busy = 1
|
||||
for(var/i, i<4, i++)
|
||||
switch(i)
|
||||
if(0)
|
||||
U << "\blue Engaging mode...\n\black<b>CODE NAME</b>: \red <b>KAMIKAZE</b>"
|
||||
if(1)
|
||||
U << "\blue Re-routing power nodes... \nUnlocking limiter..."
|
||||
if(2)
|
||||
U << "\blue Power nodes re-routed. \nLimiter unlocked."
|
||||
if(3)
|
||||
grant_kamikaze(U)//Give them verbs and change variables as necessary.
|
||||
U.regenerate_icons()//Update their clothing.
|
||||
ninjablade()//Summon two energy blades.
|
||||
message_admins("\blue [key_name_admin(U)] used KAMIKAZE mode.")//Let the admins know.
|
||||
s_busy = 0
|
||||
return
|
||||
sleep(s_delay)
|
||||
else
|
||||
U << "\red <b>ERROR<b>: \black Unable to initiate mode."
|
||||
else
|
||||
U << "\red <b>ERROR<b>: \black Unable to initiate mode."
|
||||
U << browse(null, "window=spideros")
|
||||
s_busy = 0
|
||||
return
|
||||
else
|
||||
U << browse(null, "window=spideros")
|
||||
s_busy = 0
|
||||
return
|
||||
U << "\red Your <b>NINJA HONOR</b> prevents you from activating Kamikaze here!"
|
||||
else
|
||||
U << "\red ERROR: WRONG PASSWORD!"
|
||||
k_unlock = 0
|
||||
|
||||
Reference in New Issue
Block a user