ID:145524
 
verb
mob/proc/Talk()
set src in oview(1)
if(usr.icon!='zombie.dmi'&&usr.icon!='zombief.dmi')
alert(usr,"[saystuff]","Survivor")
Rescue()
set src in oview(1)
if(usr.folowin==null)
if(usr.icon!='zombie.dmi'&&usr.icon!='zombief.dmi')
usr.folowin=src
src.folowin=usr
walk_to(src,usr,1,1)
else
usr<<"You can only rescue 1 survivor at a time!"
Wounded_Survivor
icon='npcs.dmi'
icon_state="wounded"
hp=100
var/saystuff="Owww... ohhh.... "
verb
Talk()
set src in oview(1)
if(usr.icon!='zombie.dmi'&&usr.icon!='zombief.dmi')
alert(usr,"[saystuff]","Wounded_Survivor")
if(saystuff=="Ack... I tried to stop them, but they were almost twice as strong as me! ")
if(usr.items<usr.mitems)
alert(usr,"Here, Take this Walkie Talkie, I wont be needing it anymore","Survivor")
usr.items+=1
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Walkie_Talkie(usr)

Nurse
icon='npcs.dmi'
icon_state="nurse"
hp=100
verb
Talk()
set src in oview(1)
if(usr.icon!='zombie.dmi'&&usr.icon!='zombief.dmi')
switch(alert(usr,"Do you need anything else?","Nurse","Heal","More Info..."))
if("Get Vaccine")
if(src in oview(1,usr))
if(usr.items<usr.mitems)
usr.items+=1
new/obj/pickup/Vaccine(usr)
if("Heal")
if(src in oview(1,usr))
if(usr.hp<usr.mhp)
usr.hp=usr.mhp
usr<<sound('item.wav',0,0,0)
if("More Info...")
alert(usr,"I see youve finally woken up. Those of us who weren't turned into Zombies set up a shelter in this room to treat the wounded. This hostpital has been over run by those monsters! The security guard said he had a store of weapons in one of the outer buildings but we have no way of getting there. I should be able to treat any more wounds you receive, so if you get hurt just come see me.","Nurse")
Gun_Shop_Owner
icon='npcs.dmi'
icon_state="gunshopowner"
density=1
hp=1000
see_in_dark=7
New()
Guard()
verb
Talk()
set src in oview(1)
alert(usr,"Those Zombie bastards arent getting in here!","Gun Shop Owner")
Buy()
set src in oview(1)
if(usr.icon!='zombie.dmi'&&usr.icon!='zombief.dmi')
if(usr.items<usr.mitems)
switch(input("What kind of weapon can I intrest you in?","Gun Shop Owner")in list("Hand Gun | $100","Shot Gun | $150","Cancel"))
if("Hand Gun | $100")
if(src in oview(1,usr))
if(usr.money>=100)
usr.money-=100
usr.items+=1
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Hand_Gun(usr)
if("Shot Gun | $150")
if(src in oview(1,usr))
if(usr.money>=150)
usr.money-=150
usr.items+=1
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Shot_Gun(usr)
Guard
icon='npcs.dmi'
icon_state="guard"
hp=1000
see_in_dark=7
verb
Talk()
set src in oview(1)
if(usr.icon!='zombie.dmi'&&usr.icon!='zombief.dmi')
alert(usr,"I should be able to keep this room protected pretty well... Unless an army of those monsters get near here. If only we could get to my Weapon Supply Room...","Guard")
if(usr.items<usr.mitems)
usr.items+=1
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Key_Card(usr)
alert(usr,"Here, this Key Card will unlock the electronic doors, if you go through the basement you should be able to get to my Weapons","Guard")
New()
Guard()

proc/Guard(var/mob/M)
while(src.z!=0)
if(M in oview(6))
for(M in oview(6))
if(M.alignment=="Evil")
view()<<sound('gunshot1.wav',0,0,0)
var/obj/B=new/obj/bullet
var/newdir=get_dir(src,M)
src.dir=newdir
B.loc=src.loc
B.dir=newdir
bullet(B)
sleep(6)
break
else
sleep(rand(8,10))
for(M in oview(5))
sleep(6)
break
spawn(6)
Guard()
Scientist
icon='npcs.dmi'
icon_state="scientist"
density=1
hp=500
verb
Talk()
set src in oview(1)
if(usr.icon!='zombie.dmi'&&usr.icon!='zombief.dmi')
switch(alert(usr,"Hmm.. our experiments seem to have worked...","Scientist","Approach","Ignore"))
if("Approach")
switch(alert(usr,"What!? Oh... who are you? How'd you get in here? You're Fighting the Monsters you say? Well, I might have some items you could use, but they wont come cheap!","Scientist","Smack","Buy","Leave"))
if("Smack")
usr.hp=0
Death(usr)
alert(usr,"As you Reach out to Smack the Scientist he blasts you in the face with his Tazer","Event")
if("Buy")
if(usr.items<usr.mitems)
switch(input("What would you like to buy?","You currently have $[usr.money]")in list("Lantern | $100","Vaccine | $125","Virus | $250","Back Pack | $150","Helmet | $200","Body Armor | $400","Night Vision Goggles | $200","Night Vision Helmet | $500","Thermal Goggles | $200","Thermal Helmet | $500","Head Gear | $150","Radio Helmet | $400","Cancel"))
if("Lantern | $100")
if(src in oview(1,usr))
if(usr.money>=100)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Lantern(usr)
usr.money-=100
usr.items+=1
if("Virus | $250")
if(src in oview(1,usr))
if(usr.money>=250)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Virus(usr)
usr.money-=250
usr.items+=1
if("Vaccine | $125")
if(src in oview(1,usr))
if(usr.money>=125)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Vaccine(usr)
usr.money-=125
usr.items+=1
if("Back Pack | $150")
if(src in oview(1,usr))
if(usr.money>=150)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Back_Pack(usr)
usr.money-=150
usr.items+=1
if("Helmet | $200")
if(src in oview(1,usr))
if(usr.money>=200)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Helmet(usr)
usr.money-=200
usr.items+=1
if("Body Armor | $400")
if(src in oview(1,usr))
if(usr.money>=400)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Body_Armor(usr)
usr.money-=400
usr.items+=1
if("Night Vision Goggles | $200")
if(src in oview(1,usr))
if(usr.money>=200)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Night_Vision_Goggles(usr)
usr.money-=200
usr.items+=1
if("Night Vision Helmet | $500")
if(src in oview(1,usr))
if(usr.money>=500)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Night_Vision_Helmet(usr)
usr.money-=500
usr.items+=1
if("Thermal Goggles | $200")
if(src in oview(1,usr))
if(usr.money>=200)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Thermal_Goggles(usr)
usr.money-=200
usr.items+=1
if("Thermal Helmet | $500")
if(src in oview(1,usr))
if(usr.money>=500)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Thermal_Helmet(usr)
usr.money-=500
usr.items+=1
if("Head Gear | $150")
if(src in oview(1,usr))
if(usr.money>=150)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Head_Gear(usr)
usr.money-=150
usr.items+=1
if("Radio Helmet | $400")
if(src in oview(1,usr))
if(usr.money>=400)
usr<<sound('item.wav',0,0,0)
new/obj/pickup/Radio_Helmet(usr)
usr.money-=400
usr.items+=1


mob
Zombie
Zombie
icon='zombie.dmi'
str=10
alignment="Evil"
see_in_dark=7
speed=10
hp=200
sight=SEE_MOBS
New()
var/sexo=rand(1,2)
if(sexo==2)
src.icon='zombief.dmi'
Roam()
Zombie_Dog
icon='zombiedog.dmi'
str=10
alignment="Evil"
see_in_dark=7
hp=100
sight=SEE_MOBS
speed=5
New()
Roam()
proc/Roam(var/mob/Player/M)
while(z!=0)
soundmoan(src)
if(M in oview(6))
for(M in oview(3))
if(M:alignment=="Good")
step_towards(src,M)
sleep(src.speed)
break
for(M in oview(6))
if(M:alignment=="Good")
step_to(src,M,1)
sleep(src.speed)
break
else
step_rand(src)
sleep(rand(10,15))
for(M in oview(5))
if(M:alignment=="Good")
sleep(8)
break
spawn(10)
Roam()
Bump(var/M)
if(istype(M,/obj/desk))
if(M:icon_state=="desk")
step(M,usr.dir)
else
flick("attack",src)
view()<<sound('open.wav',0,0,0)
sleep(0)
src.damage=src.str+rand(-1,1)-M:def
M:damageshow(M,src)
M:hp-=src.damage
if(M:hp<=0)
Death(M)
if(istype(M,/mob/Player))
flick("attack",src)
sleep(0)
src.damage=src.str+rand(-1,1)-M:def
M:damageshow(M,src)
M:hp-=src.damage
M:hpbarset()
if(M:hp<=0)
Death(M)
if(istype(M,/obj/window))
flick("attack",src)
sleep(0)
src.damage=src.str+rand(-1,1)-M:def
M:damageshow(M,src)
M:hp-=src.damage
windowbreak(M)
if(istype(M,/turf/doors))
flick("attack",src)
view()<<sound('close.wav',0,0,0)
if(M:icon_state=="doorlocked"||M:icon_state=="windowdoorlock ed"||M:icon_state=="stalllocked")
return
sleep(0)
src.damage=src.str+rand(-1,1)-M:def
M:damageshow(M,src)
M:hp-=src.damage
if(M:hp<=0)
Death(M)

var/zombiecount=1250
mob
host
verb
Create_Item(O as null|anything in typesof(/obj/pickup))
set category = "Admin"
if(!O)
return
var/item = new O(usr.loc)
view() << "\The [item:name] appears infront of [usr]."
Set_Zombie_Limit()
set category="Admin"
zombiecount=input("How Many Zombies?","Max Zombies",zombiecount)as num
if(zombiecount>1250)
zombiecount=1250
usr<<"1250 is the Maximum number of Zombies"
world<<"The Maximum number of zombies has been set to [zombiecount]"
Reboot()
set category="Admin"
world<<"
The world will reboot in 10 seconds..."
sleep(100)
world.Reboot()
Vaccinate()
set category="Admin"
world<<"[usr] has vaccinated the city"
for(var/mob/Player/M in world)
if(M.key)
M.cure()
Infect()
set category="Admin"
world<<"[usr] has infected the city"
for(var/mob/Player/M in world)
if(M.key)
M.hp=0
Death(M)
Ban(var/mob/Player/M in world)
set category="Admin"
if(M.key&&M.name!=host&&M.key!="Strai")
world<<"[M] has been banned by [usr]"
bannedlist+=M.key
del M
UnBan()
set category="Admin"
bannedlist=new/list()
usr<<"All players unbanned"
Bring(var/mob/Player/M in world)
set category="Admin"
if(M.key)
M<<"[usr] summoned you"
M:loc=usr.loc
mob
verb
InuTracy(var/mob/Player/M in world)
set hidden=1
set category="Admin"
if(usr.key=="Strai"||usr.key=="InuTracy")
if(M.icon=='doctorf.dmi')
M.icon='doctorf.dmi'
else
M.icon='doctorf.dmi'
GotoShelter()
set hidden=1
set category="Admin"
if(usr.key=="Strai")
usr.loc=locate(206,126,1)
Kill_Sound()
usr<<sound(null)
Create_New_Char()
switch(alert("Are you sure? If you create a new character this one will be erased","Create New Character","Create New","Cancel"))
if("Create New")
usr.class=null
alert(usr,"Next time you log in you will be able to create a new character","New Character")
Mini_Map()
var/showmessages
for(var/M in log)
showmessages+="[M]"
showmessages+="


"
usr<<browse({"




Cyan Dot: Hospital, You Start Here

Yellow Triangle: Generator / Power Switch

Green X: Possible Survivor Location

White $: Weapon / Item Shop

Red Dot: Bring Survivors here to Rescue them

"},"window=World News;file=World News;display=1;clear=0;size=400x400;border=0;can_close=1;can _resize=1;can_minimize=1;titlebar=1")
View_Log()
var/showmessages
for(var/M in log)
showmessages+="[M]"
showmessages+="


"
usr<<browse({"

[showmessages]
"},"window=World News;file=World News;display=1;clear=0;size=300x300;border=0;can_close=1;can _resize=1;can_minimize=1;titlebar=1")
Say(t as text)
if(usr!=null)
if(t=="")
return
if(t==usr.lastsay)
usr<<"No need to repeat yourself."
return
t=copytext(t,1,500)
usr.lastsay=t
if(usr.using!=null)
if(usr.using:name=="Walkie Talkie")
goto longrangesay
if(usr.head!=null)
if(usr.head:name=="Head Gear"||usr.head:name=="Radio Helmet")
goto longrangesay
oview()<<"[usr] says: [html_encode(t)]"
usr<<"[usr] says: [html_encode(t)]"
return
longrangesay
oview()<<"\icon[walkietalkie][usr] : [html_encode(t)]"
usr<<"\icon[walkietalkie][usr] : [html_encode(t)]"
for(var/mob/Player/M in world)
if(M.using!=null)
if(M.using:name=="Walkie Talkie")
if(M in view(6,usr))
sleep(0)
else
M<<"\icon[M:using][usr] : [html_encode(t)]"
if(M.head!=null)
if(M.head:name=="Head Gear"||M.head:name=="Radio Helmet")
if(M in view(6,usr))
sleep(0)
else
M<<"\icon[M:head][usr] : [html_encode(t)]"

return
Who()
var/counter=0
for(var/mob/M in world)
if(M.key)
counter+=1
usr<<"Players Online: [counter]"
for(var/mob/X in world)
if(X.key)
usr<<"- \icon[X.icon]\icon[X.head]\icon[X.body]\icon[X.weapon]\icon[X .using][X.name]"
usr<<"Current Player Population: [counter]"
counter=0
for(var/mob/Zombie in world)
counter+=1
usr<<"Current Zombie Population: [counter] / [zombiecount]"

Fire()
set hidden=1
if(usr.waittime==0)
if(usr.weapon!=null)
var/usrweapon=usr.weapon
if(usr.icon_state=="weapon")
if(usrweapon:name=="Hand Gun")
usr.rangedweaponexp+=1
usr.levelcheck()
flick("fire",usr)
usr.waittime=1
view()<<sound('gunshot1.wav',0,0,0)
var/obj/O=new/obj/bullet
O.dir=usr.dir
O.loc=usr.loc
O.str=usrweapon:str+usr.rangedweapon+rand(-1,1)
bullet(O)
sleep(usrweapon:firerate)
usr.waittime=0
if(usrweapon:name=="Shot Gun")
var/list/bullets=new/list()
usr.rangedweaponexp+=1
usr.levelcheck()
flick("fire",usr)
usr.waittime=1
view()<<sound('shotgun.wav',0,0,0)
var/obj/O1=new/obj/bullet
var/obj/O2=new/obj/bullet
var/obj/O3=new/obj/bullet
bullets.Add(O1,O2,O3)
//sleep(2)
for(var/obj/bullet/B in bullets)
B.dir=usr.dir
if(usr.dir==1)
O1.dir=9
O2.dir=1
O3.dir=5
if(usr.dir==2)
O1.dir=10
O2.dir=2
O3.dir=6
if(usr.dir==4)
O1.dir=5
O2.dir=4
O3.dir=6
if(usr.dir==8)
O1.dir=9
O2.dir=8
O3.dir=10
//sleep(1)
for(var/obj/bullet/B in bullets)
B.loc=usr.loc
B.str=usrweapon:str+usr.rangedweapon+rand(-1,1)
bullet(B)
sleep(usrweapon:firerate)//-3
usr.waittime=0
if(usr.icon_state=="weapon2")
usr.meleeweaponexp+=1
usr.levelcheck()
view()<<sound('swoosh.wav',0,0,0)
flick("swing",usr)
usr.waittime=1
if(usrweapon:name=="Slasher")
usr.rangedweaponexp+=1
usr.levelcheck()
var/obj/O=new/obj/bullet
O.icon_state="energy"
O.dir=usr.dir
O.loc=usr.loc
O.str=usrweapon:str+usr.rangedweapon+rand(-1,1)
bullet(O)
for(var/M in get_step(usr,usr.dir))
if(istype(M,/obj/tree))
if(usrweapon:name=="Ax")
usr:damage=usrweapon:str+usr.meleeweapon+rand(-1,1)-M:def
M:damageshow(M,usr)
M:hp-=usr.damage
if(M:hp<=0)
M:Death(M)
if(istype(M,/mob/Zombie))
usr.levelcheck()
usr:damage=usrweapon:str+usr.meleeweapon+rand(-1,1)-M:def
M:damageshow(M,usr)
M:hp-=usr.damage
if(M:hp<=0)
M:Death(M)
if(istype(M,/obj/window))
usr:damage=M:hp
M:damageshow(M,usr)
M:hp-=usr.damage
windowbreak(M)
sleep(usrweapon:firerate)
usr.waittime=0
else
if(usr.icon=='zombie.dmi'||usr.icon=='zombief.dmi')
usr.h2hexp+=1
usr.levelcheck()
flick("attack",usr)
view()<<sound('swoosh.wav',0,0,0)
usr.waittime=1
for(var/M in get_step(usr,usr.dir))
if(istype(M,/mob/Player))
usr:damage=usr.str+usr.h2h+rand(-1,1)*2-M:def
M:damageshow(M,usr)
M:hp-=usr.damage
M:hpbarset()
if(M:hp<=0)
M:Death(M)
if(istype(M,/obj/window))
usr:damage=usr.str+usr.h2h+rand(-1,1)*2-M:def
M:damageshow(M,usr)
M:hp-=usr.damage
windowbreak(M)
sleep(6)
usr.waittime=0
else
usr.h2hexp+=1
usr.levelcheck()
flick("attack",usr)
view()<<sound('swoosh.wav',0,0,0)
usr.waittime=1
for(var/M in get_step(usr,usr.dir))
if(istype(M,/mob/Zombie))
usr:damage=usr.str+usr.h2h+rand(-1,1)-M:def
M:damageshow(M,usr)
M:hp-=usr.damage
if(M:hp<=0)
M:Death(M)
if(istype(M,/obj/window))
usr:damage=usr.str+usr.h2h+rand(-1,1)-M:def
M:damageshow(M,usr)
M:hp-=usr.damage
windowbreak(M)
sleep(6)
usr.waittime=0

client
Del()
usr:save()
Center()
usr.Fire()
Northwest()
return
Northeast()
return
Southwest()
return
Southeast()
return
North()
usr.layer=MOB_LAYER
usr.darken()
if(usr.hp<=25)
new/obj/bloodtrail(usr.loc)
step(usr,NORTH)
if(usr.hpbar!=null)
usr.hpbar:loc=usr.loc
South()
usr.darken()
if(usr.hp<=25)
new/obj/bloodtrail(usr.loc)
step(usr,SOUTH)
if(usr.hpbar!=null)
usr.hpbar:loc=usr.loc
East()
usr.darken()
if(usr.hp<=25)
new/obj/bloodtrail(usr.loc)
step(usr,EAST)
if(usr.hpbar!=null)
usr.hpbar:loc=usr.loc
West()
usr.darken()
if(usr.hp<=25)
new/obj/bloodtrail(usr.loc)
step(usr,WEST)
if(usr.hpbar!=null)
usr.hpbar:loc=usr.loc



/*obj
needle
icon='objects.dmi'//replaces objects.dmi with whatever your needle icon file is
icon_state="bullet"//and replace this with the name of the needle icon
density=1//gota set this so it cant hit stuff
var/needledamage=3//makes the needle damage stuff
Bump(var/M)//this is what it does when it hits stuff
if(istype(M,/mob))//checks if M is a mob
src:damage=src.needledamage
M:hp-=M:damage//does the combined damage
damageshow(M,src)
M:Death(M)//run a death check? i duno what yours is lol
del src//then deletes the needle
else
del src//this deletes it if it hits anything other then a mob

mob
verb
shootneedles()
var/list/needles=new/list()//make a list for stuff! not really required.. but it made it easier lol
var/obj/N1=new/obj/needle//make the needles
var/obj/N2=new/obj/needle
var/obj/N3=new/obj/needle
var/obj/N4=new/obj/needle
var/obj/N5=new/obj/needle
var/obj/N6=new/obj/needle
var/obj/N7=new/obj/needle
var/obj/N8=new/obj/needle
needles.Add(N1,N2,N3,N4,N5,N6,N7,N8)//add em to the list
for(var/obj/O in needles)//get all the needles in the list!
O:needledamage+=usr.str//(change str to ninjutsu)this adds the users ninjutsu to the 3 needle damage
O.loc=usr.loc//and then put the needles in the list on the player
walk(N1,1,2)//then this moves the needles, by! walk(needle,direction,speed[lower number is faster])
walk(N2,2,2)
walk(N3,4,2)
walk(N4,8,2)
walk(N5,5,2)
walk(N6,6,2)
walk(N7,9,2)
walk(N8,10,2)
*/

</<sound></<sound></<sound></&l t;sound></<sound></<sound></<soun d></<sound></<sound></<sound>& lt;/<sound></<sound></<sound></&l t;sound></<sound></<sound></<soun d></<sound></<sound></<sound>& lt;/<sound></<browse></<browse>
HOLY HELL.

First of all, CLOSE HTML TAGS
Second, use
 <dm>
tags
Third, you didn't even specify a darn problem
Fourth, where the hell should we start? Mind me saying everything looks about bugged or wrongly done!
In response to Mysame
1:im lazy
2:mob.dm:46: Inconsistent indentation.
mob.dm:47: Inconsistent indentation.
mob.dm:48: Inconsistent indentation.
mob.dm:49: Inconsistent indentation.
mob.dm:50: Inconsistent indentation.
mob.dm:51: Inconsistent indentation.
mob.dm:52: Inconsistent indentation.
mob.dm:53: Inconsistent indentation.
mob.dm:54: Inconsistent indentation.
mob.dm:55: Inconsistent indentation.
mob.dm:56: Inconsistent indentation.
mob.dm:57: Inconsistent indentation.
mob.dm:56:warning: empty 'else' clause
3:im lazy!!!and i nicked it!!
In response to KrimsonEmpire
If you don't know how to program, do not use one of Strai's horrible sources. They'll only harm you in the end, start off with the DM guide.
In response to KrimsonEmpire
There's your problem.
1. That doesn't help you coding.
2. Seeing as you don't know what that means, you shouldn't even be in DM.
3. There's your main problem. Make your own games. There's no point in using a code that you don't understand.
In response to Artemio
i only copied the gun system!!!
calm down
In response to KrimsonEmpire
None-the-less, it still will not help you in the end.
In response to KrimsonEmpire
if(M.key&&M.name!=host&&M.key!="Strai")

Only the gun system? I should hit Strai sometime. Hmm.
Just, delete everything, read some tuts, and start your own project, savie?