-You can now store donuts in the donut box. The next donut you pull out will be the last one you put in.

-Changed the class type of donuts. donut/normal is now the regular donut. All other donuts have been made this way. (I.E: donut/chaos)
-Hopefully the merged records proc will now not spit out runtimes.
-You cannot enter a name without any character now. This way you can also click on the link.
-Added some coloured caps to their respected coloured wardrobes.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4123 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
giacomand@gmail.com
2012-07-20 00:12:50 +00:00
parent fb2cd3692b
commit 285f31f0c4
14 changed files with 147 additions and 95 deletions

View File

@@ -8,35 +8,35 @@
* * reagents are reagents. Acid, milc, booze, etc. * * reagents are reagents. Acid, milc, booze, etc.
* * items are objects. Fruits, tools, circuit boards. * * items are objects. Fruits, tools, circuit boards.
* * result is type to create as new object * * result is type to create as new object
* * time is optional parameter, you shall use in in your machine, * * time is optional parameter, you shall use in in your machine,
default /datum/recipe/ procs does not rely on this parameter. default /datum/recipe/ procs does not rely on this parameter.
* *
* Functions you need: * Functions you need:
* /datum/recipe/proc/make(var/obj/container as obj) * /datum/recipe/proc/make(var/obj/container as obj)
* Creates result inside container, * Creates result inside container,
* deletes prerequisite reagents, * deletes prerequisite reagents,
* transfers reagents from prerequisite objects, * transfers reagents from prerequisite objects,
* deletes all prerequisite objects (even not needed for recipe at the moment). * deletes all prerequisite objects (even not needed for recipe at the moment).
* *
* /proc/select_recipe(list/datum/recipe/avaiable_recipes, obj/obj as obj, exact = 1) * /proc/select_recipe(list/datum/recipe/avaiable_recipes, obj/obj as obj, exact = 1)
* Wonderful function that select suitable recipe for you. * Wonderful function that select suitable recipe for you.
* obj is a machine (or magik hat) with prerequisites, * obj is a machine (or magik hat) with prerequisites,
* exact = 0 forces algorithm to ignore superfluous stuff. * exact = 0 forces algorithm to ignore superfluous stuff.
* *
* *
* Functions you do not need to call directly but could: * Functions you do not need to call directly but could:
* /datum/recipe/proc/check_reagents(var/datum/reagents/avail_reagents) * /datum/recipe/proc/check_reagents(var/datum/reagents/avail_reagents)
* //1=precisely, 0=insufficiently, -1=superfluous * //1=precisely, 0=insufficiently, -1=superfluous
* *
* /datum/recipe/proc/check_items(var/obj/container as obj) * /datum/recipe/proc/check_items(var/obj/container as obj)
* //1=precisely, 0=insufficiently, -1=superfluous * //1=precisely, 0=insufficiently, -1=superfluous
* *
* */ * */
/datum/recipe /datum/recipe
var/list/reagents // example: = list("berryjuice" = 5) // do not list same reagent twice var/list/reagents // example: = list("berryjuice" = 5) // do not list same reagent twice
var/list/items // example: =list(/obj/item/weapon/crowbar, /obj/item/weapon/welder) // place /foo/bar before /foo var/list/items // example: =list(/obj/item/weapon/crowbar, /obj/item/weapon/welder) // place /foo/bar before /foo
var/result //example: = /obj/item/weapon/reagent_containers/food/snacks/donut var/result //example: = /obj/item/weapon/reagent_containers/food/snacks/donut/normal
var/time = 100 // 1/10 part of second var/time = 100 // 1/10 part of second
@@ -52,7 +52,7 @@
if ((reagents?(reagents.len):(0)) < avail_reagents.reagent_list.len) if ((reagents?(reagents.len):(0)) < avail_reagents.reagent_list.len)
return -1 return -1
return . return .
/datum/recipe/proc/check_items(var/obj/container as obj) //1=precisely, 0=insufficiently, -1=superfluous /datum/recipe/proc/check_items(var/obj/container as obj) //1=precisely, 0=insufficiently, -1=superfluous
if (!items) if (!items)
if (locate(/obj/) in container) if (locate(/obj/) in container)

View File

@@ -176,7 +176,7 @@
icon_state = "sec" icon_state = "sec"
icon_deny = "sec-deny" icon_deny = "sec-deny"
req_access_txt = "1" req_access_txt = "1"
product_paths = "/obj/item/weapon/handcuffs;/obj/item/weapon/grenade/flashbang;/obj/item/device/flash;/obj/item/weapon/reagent_containers/food/snacks/donut;/obj/item/weapon/storage/box/evidence" product_paths = "/obj/item/weapon/handcuffs;/obj/item/weapon/grenade/flashbang;/obj/item/device/flash;/obj/item/weapon/reagent_containers/food/snacks/donut/normal;/obj/item/weapon/storage/box/evidence"
product_amounts = "8;4;5;12;6" product_amounts = "8;4;5;12;6"
product_hidden = "/obj/item/clothing/glasses/sunglasses;/obj/item/kitchen/donut_box" product_hidden = "/obj/item/clothing/glasses/sunglasses;/obj/item/kitchen/donut_box"
product_hideamt = "2;2" product_hideamt = "2;2"

View File

@@ -272,7 +272,9 @@
return (result + R.Copy(Ri, 0)) return (result + R.Copy(Ri, 0))
/proc/sortRecord(var/list/datum/data/record/L, var/field = "name", var/order = 1) /proc/sortRecord(var/list/datum/data/record/L, var/field = "name", var/order = 1)
if(isnull(L) || L.len < 2) if(isnull(L))
return list()
if(L.len < 2)
return L return L
var/middle = L.len / 2 + 1 var/middle = L.len / 2 + 1
return mergeRecordLists(sortRecord(L.Copy(0, middle), field, order), sortRecord(L.Copy(middle), field, order), field, order) return mergeRecordLists(sortRecord(L.Copy(0, middle), field, order), sortRecord(L.Copy(middle), field, order), field, order)
@@ -282,16 +284,23 @@
var/Li=1 var/Li=1
var/Ri=1 var/Ri=1
var/list/result = new() var/list/result = new()
while(Li <= L.len && Ri <= R.len) if(!isnull(L) && !isnull(R))
var/datum/data/record/rL = L[Li] while(Li <= L.len && Ri <= R.len)
var/datum/data/record/rR = R[Ri] var/datum/data/record/rL = L[Li]
if(sorttext(rL.fields[field], rR.fields[field]) == order) if(isnull(rL))
result += L[Li++] L -= rL
else continue
result += R[Ri++] var/datum/data/record/rR = R[Ri]
if(isnull(rR))
R -= rR
continue
if(sorttext(rL.fields[field], rR.fields[field]) == order)
result += L[Li++]
else
result += R[Ri++]
if(Li <= L.len) if(Li <= L.len)
return (result + L.Copy(Li, 0)) return (result + L.Copy(Li, 0))
return (result + R.Copy(Ri, 0)) return (result + R.Copy(Ri, 0))
/proc/sortList(var/list/L) /proc/sortList(var/list/L)

View File

@@ -45,9 +45,10 @@
"} "}
if(2.0) if(2.0)
dat += "<B>Record List</B>:<HR>" dat += "<B>Record List</B>:<HR>"
for(var/datum/data/record/R in sortRecord(data_core.general)) if(!isnull(data_core.general))
dat += text("<A href='?src=\ref[];d_rec=\ref[]'>[]: []<BR>", src, R, R.fields["id"], R.fields["name"]) for(var/datum/data/record/R in sortRecord(data_core.general))
//Foreach goto(132) dat += text("<A href='?src=\ref[];d_rec=\ref[]'>[]: []<BR>", src, R, R.fields["id"], R.fields["name"])
//Foreach goto(132)
dat += text("<HR><A href='?src=\ref[];screen=1'>Back</A>", src) dat += text("<HR><A href='?src=\ref[];screen=1'>Back</A>", src)
if(3.0) if(3.0)
dat += text("<B>Records Maintenance</B><HR>\n<A href='?src=\ref[];back=1'>Backup To Disk</A><BR>\n<A href='?src=\ref[];u_load=1'>Upload From disk</A><BR>\n<A href='?src=\ref[];del_all=1'>Delete All Records</A><BR>\n<BR>\n<A href='?src=\ref[];screen=1'>Back</A>", src, src, src, src) dat += text("<B>Records Maintenance</B><HR>\n<A href='?src=\ref[];back=1'>Backup To Disk</A><BR>\n<A href='?src=\ref[];u_load=1'>Upload From disk</A><BR>\n<A href='?src=\ref[];del_all=1'>Delete All Records</A><BR>\n<BR>\n<A href='?src=\ref[];screen=1'>Back</A>", src, src, src, src)

View File

@@ -69,32 +69,33 @@
<th><A href='?src=\ref[src];choice=Sorting;sort=fingerprint'>Fingerprints</A></th> <th><A href='?src=\ref[src];choice=Sorting;sort=fingerprint'>Fingerprints</A></th>
<th>Criminal Status</th> <th>Criminal Status</th>
</tr>"} </tr>"}
for(var/datum/data/record/R in sortRecord(data_core.general, sortBy, order)) if(!isnull(data_core.general))
var/crimstat = "" for(var/datum/data/record/R in sortRecord(data_core.general, sortBy, order))
for(var/datum/data/record/E in data_core.security) var/crimstat = ""
if ((E.fields["name"] == R.fields["name"] && E.fields["id"] == R.fields["id"])) for(var/datum/data/record/E in data_core.security)
crimstat = E.fields["criminal"] if ((E.fields["name"] == R.fields["name"] && E.fields["id"] == R.fields["id"]))
var/background crimstat = E.fields["criminal"]
switch(crimstat) var/background
if("*Arrest*") switch(crimstat)
background = "'background-color:#DC143C;'" if("*Arrest*")
if("Incarcerated") background = "'background-color:#DC143C;'"
background = "'background-color:#CD853F;'" if("Incarcerated")
if("Parolled") background = "'background-color:#CD853F;'"
background = "'background-color:#CD853F;'" if("Parolled")
if("Released") background = "'background-color:#CD853F;'"
background = "'background-color:#3BB9FF;'" if("Released")
if("None") background = "'background-color:#3BB9FF;'"
background = "'background-color:#00FF7F;'" if("None")
if("") background = "'background-color:#00FF7F;'"
background = "'background-color:#FFFFFF;'" if("")
crimstat = "No Record." background = "'background-color:#FFFFFF;'"
dat += text("<tr style=[]><td><A href='?src=\ref[];choice=Browse Record;d_rec=\ref[]'>[]</a></td>", background, src, R, R.fields["name"]) crimstat = "No Record."
dat += text("<td>[]</td>", R.fields["id"]) dat += text("<tr style=[]><td><A href='?src=\ref[];choice=Browse Record;d_rec=\ref[]'>[]</a></td>", background, src, R, R.fields["name"])
dat += text("<td>[]</td>", R.fields["rank"]) dat += text("<td>[]</td>", R.fields["id"])
dat += text("<td>[]</td>", R.fields["fingerprint"]) dat += text("<td>[]</td>", R.fields["rank"])
dat += text("<td>[]</td></tr>", crimstat) dat += text("<td>[]</td>", R.fields["fingerprint"])
dat += "</table><hr width='75%' />" dat += text("<td>[]</td></tr>", crimstat)
dat += "</table><hr width='75%' />"
dat += text("<A href='?src=\ref[];choice=Record Maintenance'>Record Maintenance</A><br><br>", src) dat += text("<A href='?src=\ref[];choice=Record Maintenance'>Record Maintenance</A><br><br>", src)
dat += text("<A href='?src=\ref[];choice=Log Out'>{Log Out}</A>",src) dat += text("<A href='?src=\ref[];choice=Log Out'>{Log Out}</A>",src)
if(2.0) if(2.0)
@@ -400,7 +401,7 @@ What a mess.*/
if("name") if("name")
if (istype(active1, /datum/data/record)) if (istype(active1, /datum/data/record))
var/t1 = input("Please input name:", "Secure. records", active1.fields["name"], null) as text var/t1 = input("Please input name:", "Secure. records", active1.fields["name"], null) as text
if ((!( t1 ) || !( authenticated ) || usr.stat || usr.restrained() || (!in_range(src, usr) && (!istype(usr, /mob/living/silicon)))) || active1 != a1) if ((!( t1 ) || !length(trim(t1)) || !( authenticated ) || usr.stat || usr.restrained() || (!in_range(src, usr) && (!istype(usr, /mob/living/silicon)))) || active1 != a1)
return return
active1.fields["name"] = t1 active1.fields["name"] = t1
if("id") if("id")

View File

@@ -12,4 +12,5 @@
new /obj/item/weapon/caution(src) new /obj/item/weapon/caution(src)
new /obj/item/weapon/caution(src) new /obj/item/weapon/caution(src)
new /obj/item/weapon/trashbag(src) new /obj/item/weapon/trashbag(src)
new /obj/item/device/lightreplacer(src) new /obj/item/device/lightreplacer(src)
new /obj/item/clothing/head/soft/purple(src)

View File

@@ -66,6 +66,9 @@
new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/shoes/black(src)
new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/shoes/black(src)
new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/shoes/black(src)
new /obj/item/clothing/head/soft/green(src)
new /obj/item/clothing/head/soft/green(src)
new /obj/item/clothing/head/soft/green(src)
return return
/obj/structure/closet/wardrobe/orange/New() /obj/structure/closet/wardrobe/orange/New()
@@ -75,6 +78,9 @@
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/head/soft/orange(src)
new /obj/item/clothing/head/soft/orange(src)
new /obj/item/clothing/head/soft/orange(src)
return return
/obj/structure/closet/wardrobe/yellow/New() /obj/structure/closet/wardrobe/yellow/New()
@@ -84,6 +90,9 @@
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/head/soft/yellow(src)
new /obj/item/clothing/head/soft/yellow(src)
new /obj/item/clothing/head/soft/yellow(src)
return return
/obj/structure/closet/wardrobe/atmospherics_yellow/New() /obj/structure/closet/wardrobe/atmospherics_yellow/New()
@@ -93,6 +102,9 @@
new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/shoes/black(src)
new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/shoes/black(src)
new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/shoes/black(src)
new /obj/item/clothing/head/soft/yellow(src)
new /obj/item/clothing/head/soft/yellow(src)
new /obj/item/clothing/head/soft/yellow(src)
return return
/obj/structure/closet/wardrobe/engineering_yellow/New() /obj/structure/closet/wardrobe/engineering_yellow/New()
@@ -102,6 +114,9 @@
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/shoes/orange(src) new /obj/item/clothing/shoes/orange(src)
new /obj/item/clothing/head/soft/yellow(src)
new /obj/item/clothing/head/soft/yellow(src)
new /obj/item/clothing/head/soft/yellow(src)
return return
/obj/structure/closet/wardrobe/white/New() /obj/structure/closet/wardrobe/white/New()
@@ -185,6 +200,13 @@
new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/shoes/black(src)
new /obj/item/clothing/shoes/brown(src) new /obj/item/clothing/shoes/brown(src)
new /obj/item/clothing/shoes/white(src) new /obj/item/clothing/shoes/white(src)
new /obj/item/clothing/head/soft/mime(src)
new /obj/item/clothing/head/soft/blue(src)
new /obj/item/clothing/head/soft/yellow(src)
new /obj/item/clothing/head/soft/green(src)
new /obj/item/clothing/head/soft/orange(src)
new /obj/item/clothing/head/soft/purple(src)
if(prob(10)) new /obj/item/clothing/head/soft/rainbow(src)
return return
/obj/structure/closet/lawcloset/New() /obj/structure/closet/lawcloset/New()

View File

@@ -260,9 +260,9 @@ Code:
menu = "<h4><img src=pda_notes.png> Crew Manifest</h4>" menu = "<h4><img src=pda_notes.png> Crew Manifest</h4>"
menu += "Entries cannot be modified from this terminal.<br><br>" menu += "Entries cannot be modified from this terminal.<br><br>"
if(!isnull(data_core.general))
for (var/datum/data/record/t in sortRecord(data_core.general)) for (var/datum/data/record/t in sortRecord(data_core.general))
menu += "[t.fields["name"]] - [t.fields["rank"]]<br>" menu += "[t.fields["name"]] - [t.fields["rank"]]<br>"
menu += "<br>" menu += "<br>"
@@ -335,8 +335,9 @@ Code:
if (44) //medical records //This thing only displays a single screen so it's hard to really get the sub-menu stuff working. if (44) //medical records //This thing only displays a single screen so it's hard to really get the sub-menu stuff working.
menu = "<h4><img src=pda_medical.png> Medical Record List</h4>" menu = "<h4><img src=pda_medical.png> Medical Record List</h4>"
for (var/datum/data/record/R in sortRecord(data_core.general)) if(!isnull(data_core.general))
menu += "<a href='byond://?src=\ref[src];choice=Medical Records;target=\ref[R]'>[R.fields["id"]]: [R.fields["name"]]<br>" for (var/datum/data/record/R in sortRecord(data_core.general))
menu += "<a href='byond://?src=\ref[src];choice=Medical Records;target=\ref[R]'>[R.fields["id"]]: [R.fields["name"]]<br>"
menu += "<br>" menu += "<br>"
if(441) if(441)
menu = "<h4><img src=pda_medical.png> Medical Record</h4>" menu = "<h4><img src=pda_medical.png> Medical Record</h4>"
@@ -377,9 +378,9 @@ Code:
menu += "<br>" menu += "<br>"
if (45) //security records if (45) //security records
menu = "<h4><img src=pda_cuffs.png> Security Record List</h4>" menu = "<h4><img src=pda_cuffs.png> Security Record List</h4>"
if(!isnull(data_core.general))
for (var/datum/data/record/R in sortRecord(data_core.general)) for (var/datum/data/record/R in sortRecord(data_core.general))
menu += "<a href='byond://?src=\ref[src];choice=Security Records;target=\ref[R]'>[R.fields["id"]]: [R.fields["name"]]<br>" menu += "<a href='byond://?src=\ref[src];choice=Security Records;target=\ref[R]'>[R.fields["id"]]: [R.fields["name"]]<br>"
menu += "<br>" menu += "<br>"
if(451) if(451)

View File

@@ -10,62 +10,70 @@ MONKEY CUBE BOX
/mob/living/carbon/var/last_eating = 0 /mob/living/carbon/var/last_eating = 0
/obj/item/kitchen/donut_box /obj/item/kitchen/donut_box
var/amount = 6 var/const/max_amount = 6
var/list/obj/item/weapon/reagent_containers/food/snacks/donut/donuts = list()
icon = 'food.dmi' icon = 'food.dmi'
icon_state = "donutbox" icon_state = "donutbox6"
name = "donut box" name = "donut box"
/obj/item/kitchen/egg_box /obj/item/kitchen/egg_box
var/amount = 12 var/amount = 12
icon = 'food.dmi' icon = 'food.dmi'
icon_state = "eggbox" icon_state = "eggbox"
name = "egg box" name = "egg box"
/obj/item/kitchen/donut_box/New()
for(var/i = 0; i < max_amount; i++)
donuts += new /obj/item/weapon/reagent_containers/food/snacks/donut/normal(src)
update()
..()
/obj/item/kitchen/donut_box/proc/update() /obj/item/kitchen/donut_box/proc/update()
src.icon_state = text("donutbox[]", src.amount) src.icon_state = text("donutbox[]", src.donuts.len)
return return
/* /obj/item/kitchen/donut_box/attackby(obj/item/weapon/W as obj, mob/living/user as mob)
/obj/item/kitchen/donut_box/attackby(obj/item/weapon/W as obj, mob/user as mob) if (istype(W, /obj/item/weapon/reagent_containers/food/snacks/donut) && (donuts.len < max_amount))
if (istype(W, /obj/item/weapon/reagent_containers/food/snacks/donut) && (amount < 6))
user.drop_item() user.drop_item()
W.loc = src W.loc = src
donuts += W
usr << "You place a donut back into the box." usr << "You place a donut back into the box."
src.update() src.update()
return return
*/
/obj/item/kitchen/donut_box/MouseDrop(mob/user as mob) /obj/item/kitchen/donut_box/MouseDrop(mob/living/user as mob)
if ((user == usr && (!( usr.restrained() ) && (!( usr.stat ) && (usr.contents.Find(src) || in_range(src, usr)))))) if ((user == usr && (!( usr.restrained() ) && (!( usr.stat ) && (usr.contents.Find(src) || in_range(src, usr))))))
if(!istype(user, /mob/living/carbon/metroid)) if(!istype(user, /mob/living/carbon/metroid))
if( !usr.get_active_hand() ) if( !usr.get_active_hand() )
src.attack_hand(usr, usr.hand, 1) src.attack_hand(usr, usr.hand, 1)
return return
/obj/item/kitchen/donut_box/attack_paw(mob/user as mob) /obj/item/kitchen/donut_box/attack_paw(mob/living/user as mob)
return src.attack_hand(user) return src.attack_hand(user)
/obj/item/kitchen/donut_box/attack_hand(mob/user as mob, unused, flag) /obj/item/kitchen/donut_box/attack_hand(mob/living/user as mob, unused, flag)
if (flag) if (flag)
return ..() return ..()
src.add_fingerprint(user) src.add_fingerprint(user)
var/obj/item/weapon/reagent_containers/food/snacks/donut/P = locate() in src var/last = donuts.len
if(!P && (amount >= 1)) if(last <= 0)
P = new /obj/item/weapon/reagent_containers/food/snacks/donut( src ) user << "Oh no! No donuts left!"
return
//world.log << last
var/obj/item/weapon/reagent_containers/food/snacks/donut/P = donuts[last] // Get the last donut.
if(P) if(P)
usr.put_in_hands(P) P.loc = user.loc
usr << "You take a donut out of the box." user.put_in_hands(P)
src.amount-- donuts -= P
user << "You take a donut out of the box."
src.update() src.update()
return return
/obj/item/kitchen/donut_box/examine() /obj/item/kitchen/donut_box/examine()
set src in oview(1) set src in oview(1)
src.amount = round(src.amount) var/n = src.donuts.len
var/n = src.amount
for(var/obj/item/weapon/reagent_containers/food/snacks/donut/P in src)
n++
if (n <= 0) if (n <= 0)
n = 0 n = 0
usr << "There are no donuts left in the box." usr << "There are no donuts left in the box."

View File

@@ -110,8 +110,8 @@
"/obj/item/clothing/glasses", "/obj/item/clothing/glasses",
"/obj/item/ammo_casing/shotgun", "/obj/item/ammo_casing/shotgun",
"/obj/item/ammo_magazine", "/obj/item/ammo_magazine",
"/obj/item/weapon/reagent_containers/food/snacks/donut", "/obj/item/weapon/reagent_containers/food/snacks/donut/normal",
"/obj/item/weapon/reagent_containers/food/snacks/jellydonut" "/obj/item/weapon/reagent_containers/food/snacks/donut/jelly"
) )
/obj/item/weapon/storage/belt/soulstone /obj/item/weapon/storage/belt/soulstone

View File

@@ -104,6 +104,11 @@
name = "donut" name = "donut"
desc = "Goes great with Robust Coffee." desc = "Goes great with Robust Coffee."
icon_state = "donut1" icon_state = "donut1"
/obj/item/weapon/reagent_containers/food/snacks/donut/normal
name = "donut"
desc = "Goes great with Robust Coffee."
icon_state = "donut1"
New() New()
..() ..()
reagents.add_reagent("nutriment", 3) reagents.add_reagent("nutriment", 3)
@@ -114,12 +119,12 @@
src.name = "frosted donut" src.name = "frosted donut"
reagents.add_reagent("sprinkles", 2) reagents.add_reagent("sprinkles", 2)
/obj/item/weapon/reagent_containers/food/snacks/chaosdonut /obj/item/weapon/reagent_containers/food/snacks/donut/chaos
name = "Chaos Donut" name = "Chaos Donut"
desc = "Like life, it never quite tastes the same." desc = "Like life, it never quite tastes the same."
icon_state = "donut1" icon_state = "donut1"
New() New()
..()
reagents.add_reagent("nutriment", 2) reagents.add_reagent("nutriment", 2)
reagents.add_reagent("sprinkles", 1) reagents.add_reagent("sprinkles", 1)
bitesize = 10 bitesize = 10
@@ -150,7 +155,8 @@
src.name = "Frosted Chaos Donut" src.name = "Frosted Chaos Donut"
reagents.add_reagent("sprinkles", 2) reagents.add_reagent("sprinkles", 2)
/obj/item/weapon/reagent_containers/food/snacks/jellydonut
/obj/item/weapon/reagent_containers/food/snacks/donut/jelly
name = "Jelly Donut" name = "Jelly Donut"
desc = "You jelly?" desc = "You jelly?"
icon_state = "jdonut1" icon_state = "jdonut1"

View File

@@ -45,14 +45,14 @@
/obj/item/weapon/reagent_containers/food/snacks/flour, /obj/item/weapon/reagent_containers/food/snacks/flour,
/obj/item/weapon/reagent_containers/food/snacks/egg /obj/item/weapon/reagent_containers/food/snacks/egg
) )
result = /obj/item/weapon/reagent_containers/food/snacks/jellydonut result = /obj/item/weapon/reagent_containers/food/snacks/donut/jelly
/datum/recipe/donut /datum/recipe/donut
items = list( items = list(
/obj/item/weapon/reagent_containers/food/snacks/flour, /obj/item/weapon/reagent_containers/food/snacks/flour,
/obj/item/weapon/reagent_containers/food/snacks/egg /obj/item/weapon/reagent_containers/food/snacks/egg
) )
result = /obj/item/weapon/reagent_containers/food/snacks/donut result = /obj/item/weapon/reagent_containers/food/snacks/donut/normal
/datum/recipe/human /datum/recipe/human
//invalid recipe //invalid recipe
@@ -414,7 +414,7 @@
/obj/item/weapon/reagent_containers/food/snacks/flour, /obj/item/weapon/reagent_containers/food/snacks/flour,
/obj/item/weapon/reagent_containers/food/snacks/egg /obj/item/weapon/reagent_containers/food/snacks/egg
) )
result = /obj/item/weapon/reagent_containers/food/snacks/chaosdonut result = /obj/item/weapon/reagent_containers/food/snacks/donut/chaos
/datum/recipe/human/kabob /datum/recipe/human/kabob
items = list( items = list(

View File

@@ -413,9 +413,10 @@
var/dat = "" var/dat = ""
dat += "<h2>Crew Manifest</h2><br><br>" dat += "<h2>Crew Manifest</h2><br><br>"
var/list/L = list() var/list/L = list()
for (var/datum/data/record/t in sortRecord(data_core.general)) if(!isnull(data_core.general))
var/R = t.fields["name"] + " - " + t.fields["rank"] for (var/datum/data/record/t in sortRecord(data_core.general))
L += R var/R = t.fields["name"] + " - " + t.fields["rank"]
L += R
for(var/R in sortList(L)) for(var/R in sortList(L))
dat += "[R]<br>" dat += "[R]<br>"
dat += "</body></html>" dat += "</body></html>"
@@ -426,8 +427,9 @@
var/dat = "" var/dat = ""
if(src.subscreen == 0) if(src.subscreen == 0)
dat += "<h3>Medical Records</h3><HR>" dat += "<h3>Medical Records</h3><HR>"
for(var/datum/data/record/R in sortRecord(data_core.general)) if(!isnull(data_core.general))
dat += text("<A href='?src=\ref[];med_rec=\ref[];software=medicalrecord;sub=1'>[]: []<BR>", src, R, R.fields["id"], R.fields["name"]) for(var/datum/data/record/R in sortRecord(data_core.general))
dat += text("<A href='?src=\ref[];med_rec=\ref[];software=medicalrecord;sub=1'>[]: []<BR>", src, R, R.fields["id"], R.fields["name"])
//dat += text("<HR><A href='?src=\ref[];screen=0;softFunction=medical records'>Back</A>", src) //dat += text("<HR><A href='?src=\ref[];screen=0;softFunction=medical records'>Back</A>", src)
if(src.subscreen == 1) if(src.subscreen == 1)
dat += "<CENTER><B>Medical Record</B></CENTER><BR>" dat += "<CENTER><B>Medical Record</B></CENTER><BR>"
@@ -448,8 +450,9 @@
var/dat = "" var/dat = ""
if(src.subscreen == 0) if(src.subscreen == 0)
dat += "<h3>Security Records</h3><HR>" dat += "<h3>Security Records</h3><HR>"
for(var/datum/data/record/R in sortRecord(data_core.general)) if(!isnull(data_core.general))
dat += text("<A href='?src=\ref[];sec_rec=\ref[];software=securityrecord;sub=1'>[]: []<BR>", src, R, R.fields["id"], R.fields["name"]) for(var/datum/data/record/R in sortRecord(data_core.general))
dat += text("<A href='?src=\ref[];sec_rec=\ref[];software=securityrecord;sub=1'>[]: []<BR>", src, R, R.fields["id"], R.fields["name"])
if(src.subscreen == 1) if(src.subscreen == 1)
dat += "<h3>Security Record</h3>" dat += "<h3>Security Record</h3>"
if ((istype(src.securityActive1, /datum/data/record) && data_core.general.Find(src.securityActive1))) if ((istype(src.securityActive1, /datum/data/record) && data_core.general.Find(src.securityActive1)))

Binary file not shown.

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 83 KiB