ID:139897
 
Code:
//Firebending
mob
proc
Fire_Punch()
var/obj/H = new/obj/Fire_Punch
var/firep_dmg = (20 + (src.yang/1.5))
var/chi_cost = 10

if(usr.chi >= chi_cost)
usr.icon_state = "punch"
sleep(5)
usr.icon_state = ""
usr.chi -= chi_cost
H.dir = src.dir
H.loc = src.loc

while(H)
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)
if(M == src)
continue
var/dmg = (firep_dmg -= M.yin)
M << "\red You were hit by [usr.name]'s firepunch for [dmg] damage!"
M.hp -= dmg
del(H)
sleep(1)



obj/Fire_Punch
icon = 'firepunch.dmi'
density = 1
icon_state = "red"



mob/learn/
verb
Fire_Punch_()
set category = "Fire Bending"
Fire_Punch()


Problem description:
Missing Expression for var/dmg
X -= Y is shorthand for X = X - Y. So, X = Y -= Z is short for X = Y = Y - Z, which is invalid syntax for BYOND. Presumably, you want - instead of -=
In response to Garthor
It worked! Thanks