Merge pull request #4616 from Ikarrus/revvsrev

Gang Mode for TG
This commit is contained in:
Swag McYolosteinen
2014-09-22 20:28:47 +02:00
32 changed files with 815 additions and 80 deletions
+15 -9
View File
@@ -74,20 +74,26 @@
flick("e_flash", M.flash)
if(ishuman(M) && ishuman(user) && M.stat != DEAD)
if(user.mind && user.mind in ticker.mode.head_revolutionaries)
if(user.mind && ((user.mind in ticker.mode.head_revolutionaries) || (user.mind in ticker.mode.A_bosses) || (user.mind in ticker.mode.B_bosses)))
if(M.client)
if(M.stat == CONSCIOUS)
var/revsafe = 0
if(isloyal(M))
revsafe = 1
M.mind_initialize() //give them a mind datum if they don't have one.
// if(M.mind.has_been_rev)
// revsafe = 2
if(!revsafe)
M.mind.has_been_rev = 1
var/resisted
if(isloyal(M))
resisted = 1
else if(user.mind in ticker.mode.head_revolutionaries)
if(!ticker.mode.add_revolutionary(M.mind))
resisted = 1
else if(user.mind in ticker.mode.A_bosses)
if(!ticker.mode.add_gangster(M.mind,"A"))
resisted = 1
else if(user.mind in ticker.mode.B_bosses)
if(!ticker.mode.add_gangster(M.mind,"B"))
resisted = 1
if(!resisted)
M.mind.has_been_rev = 1
ticker.mode.add_revolutionary(M.mind)
else if(revsafe == 1)
user << "<span class='warning'>Something seems to be blocking the flash!</span>"
else
user << "<span class='warning'>This mind seems resistant to the flash!</span>"
else
@@ -0,0 +1,38 @@
//Recaller device
//Allows gang leaders to recall the shuttle
/obj/item/device/recaller
name = "suspicious device"
desc = "A strange device of sorts. Hard to really make out what it actually does just by looking."
icon_state = "recaller"
item_state = "walkietalkie"
throwforce = 0
w_class = 1.0
throw_speed = 3
throw_range = 7
flags = CONDUCT
var/recalling = 0
/obj/item/device/recaller/attack_self(mob/user)
if(recalling)
return
if((user.mind in ticker.mode.A_bosses) || (user.mind in ticker.mode.B_bosses))
var/turf/userturf = get_turf(user)
if(userturf.z != 1)
user << "<span class='info'>\icon[src]Error: Device out of range of station communication arrays.</span>"
return
if(emergency_shuttle.location==0)
if (emergency_shuttle.online)
recalling = 1
loc << "<span class='info'>\icon[src]Generating shuttle recall order with codes retrieved from last call signal...</span>"
sleep(rand(10,30))
loc << "<span class='info'>\icon[src]Shuttle recall order generated. Accessing station long-range communication arrays...</span>"
sleep(rand(10,30))
loc << "<span class='info'>\icon[src]Comm arrays accessed. Broadcasting recall signal...</span>"
sleep(rand(10,30))
recalling = 0
if(!cancel_call_proc(user))
loc << "<span class='info'>\icon[src]No response recieved. Emergency shuttle cannot be recalled at this time.</span>"
return
user << "<span class='info'>\icon[src]Emergency shuttle cannot be recalled at this time.</span>"
+1 -1
View File
@@ -196,7 +196,7 @@
user << "<span class='danger'>Sticking a dead brain into the frame would sort of defeat the purpose.</span>"
return
if(M.brainmob.mind in ticker.mode.head_revolutionaries)
if((M.brainmob.mind in ticker.mode.head_revolutionaries) || (M.brainmob.mind in ticker.mode.A_bosses) || (M.brainmob.mind in ticker.mode.B_bosses))
user << "<span class='danger'>The frame's firmware lets out a shrill sound, and flashes 'Abnormal Memory Engram'. It refuses to accept the MMI.</span>"
return