Merge pull request #137 from Abi79/tg_updates

Tg updates
This commit is contained in:
CIB
2011-12-24 14:50:50 -08:00
29 changed files with 6976 additions and 6707 deletions
+19 -2
View File
@@ -440,43 +440,60 @@ the mob is also allowed to move without any sort of restriction. For instance, i
// ++++ROCKDTBEN++++ MOB PROCS
/mob/proc/getBruteLoss()
return bruteloss
/mob/proc/adjustBruteLoss(var/amount)
bruteloss = max(bruteloss + amount, 0)
/mob/proc/setBruteLoss(var/amount)
bruteloss = amount
/mob/proc/getOxyLoss()
return oxyloss
/mob/proc/adjustOxyLoss(var/amount)
oxyloss = max(oxyloss + amount, 0)
/mob/proc/setOxyLoss(var/amount)
oxyloss = amount
/mob/proc/getToxLoss()
return toxloss
/mob/proc/adjustToxLoss(var/amount)
toxloss = max(toxloss + amount, 0)
/mob/proc/setToxLoss(var/amount)
toxloss = amount
/mob/proc/getFireLoss()
return fireloss
/mob/proc/adjustFireLoss(var/amount)
fireloss = max(fireloss + amount, 0)
/mob/proc/setFireLoss(var/amount)
fireloss = amount
/mob/proc/getCloneLoss()
return cloneloss
/mob/proc/adjustCloneLoss(var/amount)
cloneloss = max(cloneloss + amount, 0)
/mob/proc/setCloneLoss(var/amount)
cloneloss = amount
/mob/proc/getBrainLoss()
return brainloss
/mob/proc/adjustBrainLoss(var/amount)
brainloss = max(brainloss + amount, 0)
/mob/proc/setBrainLoss(var/amount)
brainloss = amount
// ++++ROCKDTBEN++++ MOB PROCS //END
+2
View File
@@ -818,6 +818,8 @@ Turf and target are seperate in case you want to teleport some distance from a t
mob_list.Add(M)
for(var/mob/living/carbon/monkey/M in world)
mob_list.Add(M)
for(var/mob/living/carbon/metroid/M in world)
mob_list.Add(M)
// for(var/mob/living/silicon/hivebot/M in world)
// mob_list.Add(M)
// for(var/mob/living/silicon/hive_mainframe/M in world)
@@ -233,10 +233,10 @@
O.loc = usr.loc
O.name = text("monkey ([])",copytext(md5(usr.real_name), 2, 6))
O.toxloss = usr.getToxLoss()
O.bruteloss = usr.getBruteLoss()
O.oxyloss = usr.getOxyLoss()
O.fireloss = usr.getFireLoss()
O.setToxLoss(usr.getToxLoss())
O.setBruteLoss(usr.getBruteLoss())
O.setOxyLoss(usr.getOxyLoss())
O.setFireLoss(usr.getFireLoss())
O.stat = usr.stat
O.a_intent = "hurt"
for (var/obj/item/weapon/implant/I in implants)
@@ -328,10 +328,10 @@
updateappearance(O,O.dna.uni_identity)
domutcheck(O, null)
O.toxloss = usr.getToxLoss()
O.bruteloss = usr.getBruteLoss()
O.oxyloss = usr.getOxyLoss()
O.fireloss = usr.getFireLoss()
O.setToxLoss(usr.getToxLoss())
O.setBruteLoss(usr.getBruteLoss())
O.setOxyLoss(usr.getOxyLoss())
O.setFireLoss(usr.getFireLoss())
O.stat = usr.stat
for (var/obj/item/weapon/implant/I in implants)
I.loc = O
@@ -372,10 +372,10 @@
spawn(1200)
usr.stat = 0
//usr.fireloss = 0
usr.toxloss = 0
usr.setToxLoss(0)
//usr.bruteloss = 0
usr.oxyloss = 0
usr.cloneloss = 0
usr.setOxyLoss(0)
usr.setCloneLoss(0)
usr.paralysis = 0
usr.stunned = 0
usr.weakened = 0
+4
View File
@@ -15,6 +15,8 @@ var/global/datum/controller/gameticker/ticker
var/event_time = null
var/event = 0
var/login_music // music played in pregame lobby
var/list/datum/mind/minds = list()//The people in the game. Used for objective tracking.
var/Bible_icon_state // icon_state the chaplain has chosen for his bible
@@ -26,7 +28,9 @@ var/global/datum/controller/gameticker/ticker
var/pregame_timeleft = 0
/datum/controller/gameticker/proc/pregame()
login_music = pick('title1.ogg', 'title2.ogg') // choose title music!
do
pregame_timeleft = 180
+7 -3
View File
@@ -447,8 +447,15 @@
src.eject_wait = 0
src.occupant = new /mob/living/carbon/human(src)
occupant:UI = UI // set interface preference
ghost.client.mob = src.occupant
src.occupant.hud_used = new/obj/hud( src )
// probably redundant because previous line calls mob/Login() which does this line of code
// but until this is proven useless keep it for safety - Doohl
src.icon_state = "pod_1"
//Get the clone body ready
src.occupant.rejuv = 10
@@ -503,9 +510,6 @@
// -- End mode specific stuff
occupant:UI = UI
if(istype(ghost, /mob/dead/observer))
del(ghost) //Don't leave ghosts everywhere!!
@@ -96,7 +96,7 @@
if(src.authenticated==2)
if(message_cooldown) return
var/input = input(usr, "Please choose a message to announce to the station crew.", "What?", "")
if(!input)
if(!input || !(usr in view(1,src)))
return
captain_announce(input)//This should really tell who is, IE HoP, CE, HoS, RD, Captain
log_say("[key_name(usr)] has made a captain announcement: [input]")
+2 -2
View File
@@ -273,8 +273,8 @@ var/list/sacrificed = list()
del(ghost)
for(var/datum/organ/external/affecting in corpse_to_raise.organs)
affecting.heal_damage(1000, 1000)
corpse_to_raise.toxloss = 0
corpse_to_raise.oxyloss = 0
corpse_to_raise.setToxLoss(0)
corpse_to_raise.setOxyLoss(0)
corpse_to_raise.paralysis = 0
corpse_to_raise.stunned = 0
corpse_to_raise.weakened = 0
+7
View File
@@ -367,9 +367,16 @@
return
*/
/obj/item/device/radio/proc/send_hear(freq)
/*
I'm removing this because this is apparently a REALLY REALLY bad thing and causes
people's transmissions to get cut off. This also means radios have no delay. A
fair price to pay for reliable radios. -- Doohl
if(last_transmission && world.time < (last_transmission + TRANSMISSION_DELAY))
return
last_transmission = world.time
*/
if (!(wires & WIRE_RECEIVE))
return
if (!freq) //recieved on main frequency
+2 -2
View File
@@ -41,9 +41,9 @@
set name = "Toggle Jetpack"
set category = "Object"
src.on = !( src.on )
if(src.name == "Void Jetpack (oxygen)") //Slight change added by me. i didn't make it an if-elseif because some of you might want to add other types of resprited packs :3 -Agouri
if(src.type == /obj/item/weapon/tank/jetpack/void_jetpack) //Slight change added by me. i didn't make it an if-elseif because some of you might want to add other types of resprited packs :3 -Agouri
src.icon_state = text("voidjetpack[]", src.on)
else if(src.name == "Black Jetpack (oxygen)")
else if(src.type == /obj/item/weapon/tank/jetpack/black_jetpack)
src.icon_state = text("black_jetpack[]", src.on)
else
src.icon_state = text("jetpack[]", src.on)
+15
View File
@@ -13,4 +13,19 @@
M << sound(null, 0, 0, 777) // breaks the client's sound output on channel 777
M << "You will now [M.client.midis? "start":"stop"] receiving any sounds uploaded by admins[M.client.midis? "":", and any current midis playing have been disabled"]."
return
/mob/verb/toggletitlemusic()
set category = "Special Verbs"
set name = "Toggle Pregame Music"
set desc = "Stops the pregame lobby music from playing."
if(istype(usr,/mob/new_player))
var/mob/M = usr
if(M.client)
M << sound(null, repeat = 0, wait = 0, volume = 85, channel = 1) // stop the jamsz
return
+4 -4
View File
@@ -167,9 +167,9 @@
if(confirm == "Yes")
suiciding = 1
oxyloss = 100
bruteloss = 100
toxloss = 100
cloneloss = 100
setOxyLoss(100)
setBruteLoss(100)
setToxLoss(100)
setCloneLoss(100)
updatehealth()
+2 -2
View File
@@ -481,9 +481,9 @@ Traitors and the like can also be revived with the previous role mostly intact.
return
if(config.allow_admin_rev)
//M.fireloss = 0
M.toxloss = 0
M.setToxLoss(0)
//M.bruteloss = 0
M.oxyloss = 0
M.setOxyLoss(0)
M.paralysis = 0
M.stunned = 0
M.weakened = 0
+35 -8
View File
@@ -526,9 +526,33 @@ datum
/////////////////////////////////////METROID CORE REACTIONS ///////////////////////////////
metroidpepper
name = "Metroid Condensedcapaicin"
id = "m_condensedcapaicin"
result = "condensedcapsaicin"
required_reagents = list("sugar" = 1)
result_amount = 1
required_container = /obj/item/metroid_core
required_other = 1
metroidfrost
name = "Metroid Frost Oil"
id = "m_frostoil"
result = "frostoil"
required_reagents = list("water" = 1)
result_amount = 1
required_container = /obj/item/metroid_core
required_other = 1
metroidglycerol
name = "Metroid Glycerol"
id = "m_glycerol"
result = "glycerol"
required_reagents = list("blood" = 1)
result_amount = 1
required_container = /obj/item/metroid_core
required_other = 1
metroid_explosion
name = "Explosion"
name = "Metroid Explosion"
id = "m_explosion"
result = null
required_reagents = list("blood" = 1)
@@ -633,9 +657,10 @@ datum
playsound(TO, 'phasein.ogg', 100, 1)
var/list/flashers = list()
for(var/mob/living/carbon/M in viewers(TO, null))
flick("e_flash", M.flash) // flash dose faggots
flashers += M
for(var/mob/living/carbon/human/M in viewers(TO, null))
if(M:eyecheck() <= 0)
flick("e_flash", M.flash) // flash dose faggots
flashers += M
var/y_distance = TO.y - FROM.y
var/x_distance = TO.x - FROM.x
@@ -677,8 +702,9 @@ datum
playsound(get_turf_loc(holder.my_atom), 'phasein.ogg', 100, 1)
for(var/mob/living/carbon/M in viewers(get_turf_loc(holder.my_atom), null))
flick("e_flash", M.flash)
for(var/mob/living/carbon/human/M in viewers(get_turf_loc(holder.my_atom), null))
if(M:eyecheck() <= 0)
flick("e_flash", M.flash)
for(var/i = 1, i <= created_volume, i++)
var/chosen = pick(critters)
@@ -702,8 +728,9 @@ datum
playsound(get_turf_loc(holder.my_atom), 'phasein.ogg', 100, 1)
for(var/mob/living/carbon/M in viewers(get_turf_loc(holder.my_atom), null))
flick("e_flash", M.flash)
for(var/mob/living/carbon/human/M in viewers(get_turf_loc(holder.my_atom), null))
if(M:eyecheck() <= 0)
flick("e_flash", M.flash)
for(var/i = 1, i <= created_volume, i++)
var/chosen = pick(borks)
+25 -3
View File
@@ -1008,7 +1008,7 @@
spawn(5)
var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this)
user << "\blue You inject [trans] units of the solution. The syringe now contains [src.reagents.total_volume] units."
if (reagents.total_volume >= reagents.maximum_volume && mode==SYRINGE_INJECT)
if (reagents.total_volume <= 0 && mode==SYRINGE_INJECT)
mode = SYRINGE_DRAW
update_icon()
@@ -1839,7 +1839,7 @@
icon_state = null
item_state = "atoxinbottle"
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15)
possible_transfer_amounts = list(5,10,15,25,30)
flags = FPRINT | TABLEPASS | OPENCONTAINER
volume = 30
@@ -2078,7 +2078,25 @@
desc = "A golden cup. It will be presented to a winner of tournament 26 june and name of the winner will be graved on it."
//Syringes
/obj/item/weapon/reagent_containers/syringe/robot
/obj/item/weapon/reagent_containers/syringe/robot/antitoxin
name = "Syringe (anti-toxin)"
desc = "Contains anti-toxins."
New()
..()
reagents.add_reagent("anti_toxin", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/syringe/robot/inaprovaline
name = "Syringe (inaprovaline)"
desc = "Contains inaprovaline - used to stabilize patients."
New()
..()
reagents.add_reagent("inaprovaline", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/syringe/robot/mixed
name = "Syringe (mixed)"
desc = "Contains inaprovaline & anti-toxins."
New()
@@ -2094,6 +2112,7 @@
New()
..()
reagents.add_reagent("inaprovaline", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/syringe/antitoxin
@@ -2102,6 +2121,7 @@
New()
..()
reagents.add_reagent("anti_toxin", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/syringe/antiviral
@@ -2110,12 +2130,14 @@
New()
..()
reagents.add_reagent("spaceacillin", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/ld50_syringe/choral
New()
..()
reagents.add_reagent("chloralhydrate", 50)
mode = SYRINGE_INJECT
update_icon()
////////////////////////////////////////////////////////////////////////////////
+2
View File
@@ -20,6 +20,7 @@
melee_damage_upper = 50
angertext = "runs"
attacktext = "chomps"
attack_sound = 'bite.ogg'
/obj/effect/critter/roach
@@ -122,6 +123,7 @@
melee_damage_upper = 8
angertext = "charges"
attacktext = "hits"
attack_sound = 'genhit1.ogg'
Die()
..()
+47 -2
View File
@@ -307,7 +307,7 @@
if(!W || !user)
return 0
if ((istype(W, /obj/item/weapon/shovel))||(istype(W,/obj/item/weapon/pickaxe/drill))||(istype(W,/obj/item/weapon/pickaxe/diamonddrill)))
if ((istype(W, /obj/item/weapon/shovel)))
var/turf/T = user.loc
if (!( istype(T, /turf) ))
return
@@ -319,7 +319,7 @@
user << "\red You start digging."
playsound(src.loc, 'rustle1.ogg', 50, 1) //russle sounds sounded better
sleep(50)
sleep(40)
if ((user.loc == T && user.equipped() == W) && !dug)
user << "\blue You dug a hole."
gets_dug()
@@ -328,6 +328,50 @@
icon_state = "asteroid_dug"
else
..(W,user)
if ((istype(W,/obj/item/weapon/pickaxe/drill)))
var/turf/T = user.loc
if (!( istype(T, /turf) ))
return
if (dug == 1)
user << "\red This area has already been dug."
return
user << "\red You start digging."
playsound(src.loc, 'rustle1.ogg', 50, 1) //russle sounds sounded better
sleep(30)
if ((user.loc == T && user.equipped() == W))
user << "\blue You dug a hole."
gets_dug()
dug = 1
icon_plating = "asteroid_dug"
icon_state = "asteroid_dug"
else
..(W,user)
if ((istype(W,/obj/item/weapon/pickaxe/diamonddrill)))
var/turf/T = user.loc
if (!( istype(T, /turf) ))
return
if (dug == 1)
user << "\red This area has already been dug."
return
user << "\red You start digging."
playsound(src.loc, 'rustle1.ogg', 50, 1) //russle sounds sounded better
sleep(0)
if ((user.loc == T && user.equipped() == W))
user << "\blue You dug a hole."
gets_dug()
dug = 1
icon_plating = "asteroid_dug"
icon_state = "asteroid_dug"
else
..(W,user)
return
/turf/simulated/floor/plating/airless/asteroid/proc/gets_dug()
@@ -335,6 +379,7 @@
new/obj/item/weapon/ore/glass(src)
new/obj/item/weapon/ore/glass(src)
new/obj/item/weapon/ore/glass(src)
new/obj/item/weapon/ore/glass(src)
return
/turf/simulated/floor/plating/airless/asteroid/proc/updateMineralOverlays()
+4 -4
View File
@@ -40,10 +40,10 @@
paralysis = 0
weakened = 0
sleeping = 0
bruteloss = max(getBruteLoss(), 0)
toxloss = max(getToxLoss(), 0)
oxyloss = max(getOxyLoss(), 0)
fireloss = max(getFireLoss(), 0)
setBruteLoss(max(getBruteLoss(), 0))
setToxLoss(max(getToxLoss(), 0))
setOxyLoss(max(getOxyLoss(), 0))
setFireLoss(max(getFireLoss(), 0))
if(stat)
stat = 0
return
@@ -71,8 +71,6 @@
if(locate(/obj/effect/alien/weeds) in loc)
if(health >= 150)
adjustToxLoss(5)
if(getToxLoss() > max_plasma)
toxloss = max_plasma
else
adjustBruteLoss(-5)
@@ -71,8 +71,6 @@
if(locate(/obj/effect/alien/weeds) in loc)
if(health >= 125)
adjustToxLoss(10)
if(getToxLoss() > max_plasma)
toxloss = max_plasma
else
adjustBruteLoss(-10)
@@ -296,8 +296,6 @@
if(locate(/obj/effect/alien/weeds) in loc)
if(health >= 100)
adjustToxLoss(15)
if(getToxLoss() > max_plasma)
toxloss = max_plasma
else
adjustBruteLoss(-15)
@@ -74,8 +74,6 @@
if(locate(/obj/effect/alien/weeds) in loc)
if(health >= 250)
adjustToxLoss(20)
if(getToxLoss() > max_plasma)
toxloss = max_plasma
else
bruteloss -= 5
adjustFireLoss(-5)
@@ -82,9 +82,9 @@
paralysis = max(min(paralysis, 20), 0)
weakened = max(min(weakened, 20), 0)
sleeping = max(min(sleeping, 20), 0)
bruteloss = max(getBruteLoss(), 0)
toxloss = max(getToxLoss(), 0)
oxyloss = max(getOxyLoss(), 0)
setBruteLoss(max(getBruteLoss(), 0))
setToxLoss(max(getToxLoss(), 0))
setOxyLoss(max(getOxyLoss(), 0))
adjustFireLoss(0)
handle_mutations_and_radiation()
+2 -2
View File
@@ -135,9 +135,9 @@
/mob/living/proc/revive()
//src.fireloss = 0
src.toxloss = 0
src.setToxLoss(0)
//src.bruteloss = 0
src.oxyloss = 0
src.setOxyLoss(0)
src.paralysis = 0
src.stunned = 0
src.weakened =0
+2
View File
@@ -140,6 +140,7 @@
message = dd_replacetext(message, "grief", "grife")
message = dd_replacetext(message, "space", "spess")
message = dd_replacetext(message, "carp", "crap")
message = dd_replacetext(message, "reason", "raisin")
if(prob(50))
message = uppertext(message)
message += "[stutter(pick("!", "!!", "!!!"))]"
@@ -174,6 +175,7 @@
message_range = 1
italics = 1
if ("secure headset")
if (src:l_ear && istype(src:l_ear,/obj/item/device/radio))
src:l_ear.talk_into(src, message, 1)
@@ -56,15 +56,9 @@
..()
src.modules += new /obj/item/borg/sight/hud/med(src)
src.modules += new /obj/item/device/healthanalyzer(src)
for(var/i = 1 to 3)
var/obj/item/weapon/reagent_containers/syringe/S = new /obj/item/weapon/reagent_containers/syringe(src)
switch(i)
if(1) S.name = "Syringe-(Inaprovaline)"
if(2) S.name = "Syringe-(Anti-Toxin)"
if(3) S.name = "Syringe-(Mixed)"
src.modules += S
src.modules += new /obj/item/weapon/reagent_containers/syringe/robot/antitoxin(src)
src.modules += new /obj/item/weapon/reagent_containers/syringe/robot/inoprovaline(src)
src.modules += new /obj/item/weapon/reagent_containers/syringe/robot/mixed(src)
src.modules += new /obj/item/weapon/reagent_containers/syringe(src)
src.modules += new /obj/item/weapon/reagent_containers/syringe(src)
src.modules += new /obj/item/weapon/reagent_containers/glass/bottle/robot/inaprovaline(src)
+21
View File
@@ -21,6 +21,8 @@
mind.key = key
mind.current = src
spawn() Playmusic() // git some tunes up in heeyaa~
var/starting_loc = pick(newplayer_start)
if(!starting_loc) starting_loc = locate(1,1,1)
loc = starting_loc
@@ -94,6 +96,7 @@
src << browse_rsc('sos_14.png')
//End PDA Resource Initialisation =====================================================>
Logout()
ready = 0
..()
@@ -125,6 +128,21 @@
src << browse(output,"window=playersetup;size=250x233;can_close=0")
return
proc/Playmusic()
while(!ticker) // wait for ticker to be created
sleep(1)
var/waits = 0
var/maxwaits = 100
while(!ticker.login_music)
sleep(2)
waits++ // prevents DDoSing the server via badminery
if(waits >= maxwaits)
break
src << sound(ticker.login_music, repeat = 0, wait = 0, volume = 85, channel = 1) // MAD JAMS
Stat()
..()
@@ -343,6 +361,9 @@
else
preferences.copy_to(new_character)
src << sound(null, repeat = 0, wait = 0, volume = 85, channel = 1) // MAD JAMS cant last forever yo
new_character.dna.ready_dna(new_character)
if(mind)
mind.transfer_to(new_character)
+4 -4
View File
@@ -469,10 +469,10 @@ Doing this because FindTurfs() isn't even used
/mob/verb/Revive()
set category = "Debug"
if(Debug)
fireloss = 0
toxloss = 0
bruteloss = 0
oxyloss = 0
setFireLoss(0)
setToxLoss(0)
setBruteLoss(0)
setOxyLoss(0)
paralysis = 0
stunned = 0
weakened = 0
+3 -3
View File
@@ -32,9 +32,9 @@
paralysis = max(min(paralysis, 1), 0)
weakened = max(min(weakened, 15), 0)
sleeping = max(min(sleeping, 1), 0)
bruteloss = max(getBruteLoss(), 0)
toxloss = 0
oxyloss = 0
setBruteLoss(max(getBruteLoss(), 0))
setToxLoss(0)
setOxyLoss(0)
adjustFireLoss(0)
use_power()