mirror of
https://github.com/cybergirlvannie/OpenSS13.git
synced 2026-08-23 20:56:21 +01:00
Added new trunk.
This commit is contained in:
@@ -0,0 +1,194 @@
|
||||
/proc/add_zero(t, u)
|
||||
|
||||
while(length(t) < u)
|
||||
t = text("0[]", t)
|
||||
return t
|
||||
|
||||
/proc/add_lspace(t, u)
|
||||
while(length(t) < u)
|
||||
t = " [t]"
|
||||
return t
|
||||
|
||||
/proc/add_tspace(t, u)
|
||||
while(length(t) < u)
|
||||
t = "[t] "
|
||||
return t
|
||||
|
||||
/obj/bomb/New()
|
||||
|
||||
..() //*****RM
|
||||
switch(btype)
|
||||
if(0) // radio
|
||||
var/obj/item/weapon/assembly/r_i_ptank/R = new /obj/item/weapon/assembly/r_i_ptank( src.loc )
|
||||
var/obj/item/weapon/tank/plasmatank/p3 = new /obj/item/weapon/tank/plasmatank( R )
|
||||
var/obj/item/weapon/radio/signaler/p1 = new /obj/item/weapon/radio/signaler( R )
|
||||
var/obj/item/weapon/igniter/p2 = new /obj/item/weapon/igniter( R )
|
||||
R.part1 = p1
|
||||
R.part2 = p2
|
||||
R.part3 = p3
|
||||
p1.master = R
|
||||
p2.master = R
|
||||
p3.master = R
|
||||
R.status = explosive
|
||||
p1.b_stat = 0
|
||||
p2.status = 1
|
||||
p3.gas.temperature = btemp + T0C
|
||||
//SN src = null
|
||||
|
||||
if(1) // prox
|
||||
var/obj/item/weapon/assembly/m_i_ptank/R = new /obj/item/weapon/assembly/m_i_ptank( src.loc )
|
||||
var/obj/item/weapon/tank/plasmatank/p3 = new /obj/item/weapon/tank/plasmatank( R )
|
||||
var/obj/item/weapon/prox_sensor/p1 = new /obj/item/weapon/prox_sensor( R )
|
||||
var/obj/item/weapon/igniter/p2 = new /obj/item/weapon/igniter( R )
|
||||
R.part1 = p1
|
||||
R.part2 = p2
|
||||
R.part3 = p3
|
||||
p1.master = R
|
||||
p2.master = R
|
||||
p3.master = R
|
||||
R.status = explosive
|
||||
|
||||
p3.gas.temperature = btemp +T0C
|
||||
p2.status = 1
|
||||
|
||||
|
||||
if(src.active)
|
||||
R.part1.state = 1
|
||||
R.part1.icon_state = text("motion[]", 1)
|
||||
R.c_state(1, src)
|
||||
|
||||
if(2) // time
|
||||
|
||||
var/obj/item/weapon/assembly/t_i_ptank/R = new /obj/item/weapon/assembly/t_i_ptank( src.loc )
|
||||
var/obj/item/weapon/tank/plasmatank/p3 = new /obj/item/weapon/tank/plasmatank( R )
|
||||
var/obj/item/weapon/timer/p1 = new /obj/item/weapon/timer( R )
|
||||
var/obj/item/weapon/igniter/p2 = new /obj/item/weapon/igniter( R )
|
||||
R.part1 = p1
|
||||
R.part2 = p2
|
||||
R.part3 = p3
|
||||
p1.master = R
|
||||
p2.master = R
|
||||
p3.master = R
|
||||
R.status = explosive
|
||||
|
||||
p3.gas.temperature = btemp +T0C
|
||||
p2.status = 1
|
||||
|
||||
del(src)
|
||||
return
|
||||
|
||||
/obj/proc/throwing(t_dir, rs)
|
||||
|
||||
if (src.throwspeed <= 1)
|
||||
src.throwing = 0
|
||||
src.throwspeed--
|
||||
if (rs == 0)
|
||||
rs = 1
|
||||
if (src.throwing)
|
||||
if (rs == 1)
|
||||
step(src, t_dir)
|
||||
sleep(1)
|
||||
spawn( 0 )
|
||||
throwing(t_dir, rs)
|
||||
return
|
||||
else
|
||||
if (rs > 1)
|
||||
var/t = null
|
||||
while(t < rs)
|
||||
step(src, t_dir)
|
||||
t++
|
||||
sleep(10)
|
||||
spawn( 0 )
|
||||
src.throwing(t_dir, rs)
|
||||
return
|
||||
else
|
||||
step(src, t_dir)
|
||||
sleep(10 / rs)
|
||||
spawn( 0 )
|
||||
throwing(t_dir, rs)
|
||||
return
|
||||
else
|
||||
//*****RM
|
||||
//src.density = 0
|
||||
if(istype(src, /obj/item))
|
||||
src.density = 0
|
||||
|
||||
//*****
|
||||
return
|
||||
|
||||
|
||||
//*****RM
|
||||
|
||||
/obj/Bump(atom/O)
|
||||
|
||||
if (src.throwing)
|
||||
//world<<"[src] bumped into [O] and stopped"
|
||||
src.throwing = 0
|
||||
..()
|
||||
|
||||
//*****
|
||||
/atom/proc/burn(fi_amount)
|
||||
|
||||
return
|
||||
|
||||
/atom/movable/Move()
|
||||
|
||||
var/atom/A = src.loc
|
||||
. = ..()
|
||||
src.move_speed = world.time - src.l_move_time
|
||||
src.l_move_time = world.time
|
||||
src.m_flag = 1
|
||||
if ((A != src.loc && A && A.z == src.z))
|
||||
src.last_move = get_dir(A, src.loc)
|
||||
return
|
||||
|
||||
|
||||
/proc/cleanstring(var/t)
|
||||
|
||||
var/index = findtext(t, "\n")
|
||||
while(index)
|
||||
t = copytext(t, 1, index) + "#" + copytext(t, index+1)
|
||||
index = findtext(t, "\n")
|
||||
|
||||
|
||||
index = findtext(t, "\t")
|
||||
while(index)
|
||||
t = copytext(t, 1, index) + "#" + copytext(t, index+1)
|
||||
index = findtext(t, "\t")
|
||||
|
||||
|
||||
return t
|
||||
|
||||
|
||||
/datum/config/New()
|
||||
|
||||
for(var/M in modes)
|
||||
pickprob[M] = 1
|
||||
|
||||
/datum/config/proc/pickmode()
|
||||
var/total = 0
|
||||
var/list/accum = list()
|
||||
|
||||
for(var/M in modes)
|
||||
total += pickprob[M]
|
||||
accum[M] = total
|
||||
|
||||
//world << "[M] [pickprob[M]] [accum[M]]"
|
||||
|
||||
var/r = total-(rand()*total)
|
||||
|
||||
//world << "Chosen value is [r]"
|
||||
|
||||
for(var/M in modes)
|
||||
if(pickprob[M]>0 && accum[M]>=r)
|
||||
//world << "Returning mode [M]"
|
||||
return M
|
||||
|
||||
//world << "Failed to pick gamemode in config/pickmode()"
|
||||
|
||||
return null
|
||||
|
||||
/proc/upperfirst(var/t as text)
|
||||
return uppertext(copytext(t,1,2))+copytext(t,2)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user