mob/var
learn_Saiyan_Kamehameha = 0
mob/learn/
verb
Saiyan_Kamehameha()
set category = "Techniques"
if(usr.doing)
src << "You are already doing something!"
return
if(src.monkey)
usr << "You cannot use this skill at the moment."
return
if(src.wrapped)
src << "Your ki has been contained in the goo!"
return
if(usr.buku)
return
if(src.safe)
src << "You are currently safe and cannot attack."
return
if(usr.dead)
return
if(usr.ki_lock)
src << "Cannot use this Technique at his time"
return
if(!usr.pk)
usr << "You are not a Combatant!"
return
for(var/turf/Floors/Safe_Zone/S in view(6))
if(S in view(8))
usr << "They are in a Safe Zone!"
return
for(var/turf/Planet_Gravitys/Supreme_Kai/A in view(6))
if(A in view(8))
usr << "They are in a Safe Zone!"
return
for(var/turf/Planet_Gravitys/King_Kai/D in view(6))
if(D in view(8))
usr << "They are in a Safe Zone!"
return
Saiyan_Kamehameha_Shoot()
src.afk_time = 0
mob
proc
Saiyan_Kamehameha_Shoot()
var/ki_cost = round(src.ki_max * 17.59)
if(src.ki >= ki_cost)
if(!src.doing)
src.ki_lock = 1
spawn(20) src.ki_lock = 0
src.doing = 1
src.ki -= ki_cost
src.overlays += new /obj/Overlays/SaiyanKame/Trunks
src.overlays += new /obj/Overlays/SaiyanKame/Gohan
src.overlays += new /obj/Overlays/SaiyanKame/Goten
view(6) << "<font color = yellow>[src]:</font> Trunks! Gohan! Goten! Lets do this!"
sleep(10)
view(6) << "<font color = yellow>[src]:</font> Gohan: I'll Lend You My Power! <br> Trunks: Take some of mine too! <br> Goten: I'll give you a LITTLE bit!"
sleep(1)
view(6) << "<font color = yellow>[src]:</font> TAKE THIS!!!!"
sleep(1)
view(6) << "<font color = yellow>[src]:</font> <font size=4><font color=yellow>SAIYAN!!!!</font>"
sleep(3)
view(6) << "<font color = yellow>[src]:</font> KAMEHAMEHA!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
usr.icon_state = "attack"
sleep(6)
usr.icon_state = ""
spawn(5) src.doing = 0
spawn(5) src.frozen = 0
src.overlays -= new /obj/Overlays/SaiyanKame/Trunks
src.overlays -= new /obj/Overlays/SaiyanKame/Gohan
src.overlays -= new /obj/Overlays/SaiyanKame/Goten
spawn()usr.SNorth()
spawn()usr.SSouth()
spawn()usr.SEast()
spawn()usr.SWest()
mob
proc
SNorth
set background=1
var/ki_damage = round(usr.powerlevel * 70.75)
var/ki_cost = round(src.ki_max * 17.59)
var/obj/H = new/obj/Saiyan_Kamehameha
var/obj/O = new/obj/SK_trail
H.dir = NORTH
H.loc = usr.loc
while(H)
O.loc=H.loc
O.dir=H.dir
spawn(40)
del O
step(H,H.dir)
if(!H)break
var/turf/T = H.loc
if(T.density)
del(H)
break
for(var/mob/M as mob in T)
var/absorb_max = round(M.powerlevel_max)
var/ki_absorbed = round(M.ki_shield_strength - ki_damage)
if(!M.dead && !M.safe && M.pk)
if(M.ki_shield)
if(ki_absorbed >= 1)
src << "<font color = #00C3ED>[M]'s Ki Shield Absorbs the attacks damage!"
M << "<font color = #00C3ED>Your Ki Shield Absorbs [src]'s Attack!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_absorbed)
M.ki_shield_strength -= round(ki_damage)
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
else
M << "\red [src]'s SK slams into you!"
src <<"\red Your SK slams into [M]!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_absorbed)
M.ki_shield_strength -= round(ki_damage)
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
else
if(M.absorbing)
if(absorb_max > ki_damage)
M << "\red [src]'s attacks hits you, but you Absorb the energy!"
src <<"\red Your SK is Absorbed by [M]!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.ki += ki_damage
src.doing = 0
src.frozen = 0
return
else
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_damage)
M << "\red You try to absorb [src]'s SK, but it is too strong!"
src <<"\red Your SK slams into [M]!"
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
M << "\red [src.name]'s SK slams into you"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= ki_damage
M.BigKiDeathCheck(src)
del(H)
sleep(1)
mob
proc
SSouth
set background=1
var/ki_damage = round(usr.powerlevel * 70.75)
var/ki_cost = round(src.ki_max * 17.59)
var/obj/H = new/obj/Saiyan_Kamehameha
var/obj/O = new/obj/SK_trail
H.dir = SOUTH
H.loc = usr.loc
while(H)
O.loc=H.loc
O.dir=H.dir
spawn(40)
del O
step(H,H.dir)
if(!H)break
var/turf/T = H.loc
if(T.density)
del(H)
break
for(var/mob/M as mob in T)
var/absorb_max = round(M.powerlevel_max)
var/ki_absorbed = round(M.ki_shield_strength - ki_damage)
if(!M.dead && !M.safe && M.pk)
if(M.ki_shield)
if(ki_absorbed >= 1)
src << "<font color = #00C3ED>[M]'s Ki Shield Absorbs the attacks damage!"
M << "<font color = #00C3ED>Your Ki Shield Absorbs [src]'s Attack!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_absorbed)
M.ki_shield_strength -= round(ki_damage)
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
else
M << "\red [src]'s SK slams into you!"
src <<"\red Your SK slams into [M]!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_absorbed)
M.ki_shield_strength -= round(ki_damage)
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
else
if(M.absorbing)
if(absorb_max > ki_damage)
M << "\red [src]'s attacks hits you, but you Absorb the energy!"
src <<"\red Your SK is Absorbed by [M]!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.ki += ki_damage
src.doing = 0
src.frozen = 0
return
else
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_damage)
M << "\red You try to absorb [src]'s SK, but it is too strong!"
src <<"\red Your SK slams into [M]!"
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
M << "\red [src.name]'s SK slams into you"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= ki_damage
M.BigKiDeathCheck(src)
del(H)
sleep(1)
mob
proc
SEast
set background=1
var/ki_damage = round(usr.powerlevel * 70.75)
var/ki_cost = round(src.ki_max * 17.59)
var/obj/H = new/obj/Saiyan_Kamehameha
var/obj/O = new/obj/SK_trail
H.dir = EAST
H.loc = usr.loc
while(H)
O.loc=H.loc
O.dir=H.dir
spawn(40)
del O
step(H,H.dir)
if(!H)break
var/turf/T = H.loc
if(T.density)
del(H)
break
for(var/mob/M as mob in T)
var/absorb_max = round(M.powerlevel_max)
var/ki_absorbed = round(M.ki_shield_strength - ki_damage)
if(!M.dead && !M.safe && M.pk)
if(M.ki_shield)
if(ki_absorbed >= 1)
src << "<font color = #00C3ED>[M]'s Ki Shield Absorbs the attacks damage!"
M << "<font color = #00C3ED>Your Ki Shield Absorbs [src]'s Attack!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_absorbed)
M.ki_shield_strength -= round(ki_damage)
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
else
M << "\red [src]'s SK slams into you!"
src <<"\red Your SK slams into [M]!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_absorbed)
M.ki_shield_strength -= round(ki_damage)
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
else
if(M.absorbing)
if(absorb_max > ki_damage)
M << "\red [src]'s attacks hits you, but you Absorb the energy!"
src <<"\red Your SK is Absorbed by [M]!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.ki += ki_damage
src.doing = 0
src.frozen = 0
return
else
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_damage)
M << "\red You try to absorb [src]'s SK, but it is too strong!"
src <<"\red Your SK slams into [M]!"
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
M << "\red [src.name]'s SK slams into you"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= ki_damage
M.BigKiDeathCheck(src)
del(H)
sleep(1)
mob
proc
SWest
set background=1
var/ki_damage = round(usr.powerlevel * 70.75)
var/ki_cost = round(src.ki_max * 17.59)
var/obj/H = new/obj/Saiyan_Kamehameha
var/obj/O = new/obj/SK_trail
H.dir = WEST
H.loc = usr.loc
while(H)
O.loc=H.loc
O.dir=H.dir
spawn(40)
del O
step(H,H.dir)
if(!H)break
var/turf/T = H.loc
if(T.density)
del(H)
break
for(var/mob/M as mob in T)
var/absorb_max = round(M.powerlevel_max)
var/ki_absorbed = round(M.ki_shield_strength - ki_damage)
if(!M.dead && !M.safe && M.pk)
if(M.ki_shield)
if(ki_absorbed >= 1)
src << "<font color = #00C3ED>[M]'s Ki Shield Absorbs the attacks damage!"
M << "<font color = #00C3ED>Your Ki Shield Absorbs [src]'s Attack!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_absorbed)
M.ki_shield_strength -= round(ki_damage)
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
else
M << "\red [src]'s SK slams into you!"
src <<"\red Your SK slams into [M]!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_absorbed)
M.ki_shield_strength -= round(ki_damage)
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
else
if(M.absorbing)
if(absorb_max > ki_damage)
M << "\red [src]'s attacks hits you, but you Absorb the energy!"
src <<"\red Your SK is Absorbed by [M]!"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.ki += ki_damage
src.doing = 0
src.frozen = 0
return
else
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= round(ki_damage)
M << "\red You try to absorb [src]'s SK, but it is too strong!"
src <<"\red Your SK slams into [M]!"
M.BigKiDeathCheck(src)
src.doing = 0
src.frozen = 0
return
M << "\red [src.name]'s SK slams into you"
Explode(new /Effect/BasicBoom(M.loc,1,3))
M.powerlevel -= ki_damage
M.BigKiDeathCheck(src)
del(H)
sleep(1)
obj/Saiyan_Kamehameha
icon = 'Super Big Bang kamehameha.dmi' //'Saiyan Kame.dmi'
icon_state = "Main"
obj/Saiyan_Kamehameha
icon = 'Super Big Bang kamehameha.dmi' //'Saiyan Kame.dmi'
icon_state = ""//"Head"
layer = 100
New()
spawn(100)
del src
Move()
var/O = new/obj/SK_trail(src.loc)
O:dir = src.dir
..()
obj/SK_trail
icon = 'Super Big Bang kamehameha.dmi' //'Saiyan Kame.dmi'
icon_state = "Trail"
layer=MOB_LAYER-1
New()
spawn(30)
del src
obj/Overlays/SaiyanKame/Goten
icon='Goten No Helmet.dmi'
pixel_x = 32
pixel_y = 0
obj/Overlays/SaiyanKame/Gohan
icon='Mystic Gohan.dmi'
pixel_x = -32
pixel_y = 0
obj/Overlays/SaiyanKame/Trunks
icon='Trunks.dmi'
pixel_x = 0
pixel_y = 32
Problem description:
A friend of mine coded this for me and couldn't figure out how to solve the error, neither can I. I get bad argument definition error on lines: 126, 136, 148, 154, 164, 198, 208, 220, 226, 236, 270, 280, 292, 298, 308, 342, 352, 364, 370, and 380. All these lines contain code like "M.ki += ki_damage" "M.powerlevel -= ki_damage" "M.powerlevel -= round(ki_damage)" etc. Please help, cause I'm stuck. :/
Your error is whenever you call Explode() with a new in the arguments. Could you post your Explode() procedure, please?