Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
127 changes: 126 additions & 1 deletion code/game/jobs/job_controller.dm
Original file line number Diff line number Diff line change
Expand Up @@ -344,6 +344,131 @@ var/global/datum/controller/occupations/job_master
unassigned -= player
return 1

proc/NBupdate(var/rank)
switch(rank)
if("Station Engineer")
for(var/obj/structure/noticeboard/assistant_nb/nBoard in world)
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(nBoard.loc)
P.name = "�������� ��������"
P.info = "<b>\t ��������� �������� ��������. �� ������� ������� ����������� � �������� �������� ��� ������ ����������� ������ ���������.</b>"
P.update_icon()
P.updateinfolinks()
P.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
return
if("Roboticist")
for(var/obj/structure/noticeboard/assistant_nb/nBoard in world)
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(nBoard.loc)
P.name = "�������� ���������"
P.info = "<b>\t ��������� �������� ���������. �� ������� ������� ����������� � �������� ��� ��������������� � ���������� ������ ������������.</b>"
P.update_icon()
P.updateinfolinks()
P.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
var/obj/item/weapon/paper/PP = new /obj/item/weapon/paper(nBoard.loc)
PP.name = "������������"
PP.info = "\
\t��� �������� ����� ������ ��������� ������������. ��� ����� ��������� ������ ����� � ���������� � ���������.<br>\
<center><b>�������� �� ��������������</b><br>\
���,�������: <span class=\"paper_field\"></span><br>\
���������: <span class=\"paper_field\"></span><br>\
<b><i> NanoTrasen NSS Exodus </b></i></center><hr>\
�, �����������������, ��� ����� ������������� ����������� ������ �������� �� ����� � ����� ������������������� ��� ������� ��, � � ����� ����������� ������ ����. � ����� �������, ��� ��� �������� ����� ���� �����������, � ��� ��� �������� ������� ����� ����������.<hr>\
������� �������: <span class=\"paper_field\"></span><br><br>\
������� ��������, ���������� ������� ��� ������� ����� � ���������� ������: <span class=\"paper_field\"></span><br><br>\
������ ��������, ���������� ������� ��� ������� ����� � ���������� ������:"
PP.fields = 4
PP.updateinfolinks()
PP.update_icon()
PP.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
var/obj/item/weapon/paper/PPP = new /obj/item/weapon/paper(nBoard.loc)
PPP.name = "�����������"
PPP.info = "\
\t��� �������� ����� ������ ��������� �����������. ��� ����� ��������� ������ ����� � ���������� � ���������.<br>\
<center><b>�������� �� �����������</b><br>\
���,�������: <span class=\"paper_field\"></span><br>\
���������: <span class=\"paper_field\"></span><br>\
<b><i> NanoTrasen NSS Exodus </b></i></center><hr>\
�, �����������������, ��� ����� ������������� ����������� ������ �������� ��������������� ����������� ����������. � � ����� ����������� ������ ����. � ����� �������, ��� ��� �������� ����������.<hr>\
���������� ��� �����������: <span class=\"paper_field\"></span><br><br>\
������� �������: <span class=\"paper_field\"></span><br><br>\
������� ��������� ��� ����, ��� �����������: <span class=\"paper_field\"></span><br><br>"
PPP.fields = 5
PPP.updateinfolinks()
PPP.update_icon()
PPP.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
return
if("Medical Doctor")
for(var/obj/structure/noticeboard/assistant_nb/nBoard in world)
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(nBoard.loc)
P.name = "������"
P.info = "<b>\t � ������ �������� ����� � �����������. �� ������� ������� ����������� � ������ ��� ��������������� � �������� �����.</b>"
P.update_icon()
P.updateinfolinks()
P.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
return
if("Geneticist")
for(var/obj/structure/noticeboard/assistant_nb/nBoard in world)
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(nBoard.loc)
P.name = "������������ ������������"
P.info = "\
<b>\t�������� ��������� ���� ����� ����� ������� ������� � ������������ ������������. ��� ����� ���������� ��������� ������ ����� � ���������� � ������� ��� ��������������� � �������� �����.</b><br>\
<center><b>�������� �� ���������� ������������� ����������� �������������</b><br>\
���,�������: <span class=\"paper_field\"></span><br>\
���������: <span class=\"paper_field\"></span><br>\
<b><i> NanoTrasen NSS Exodus </b></i></center><hr>\
�, �����������������, ��� ����� ������������� ����������� ������� ������� � ������������ �������������. � � ����� ����������� ������ ����. � ����� �������, ��� ������ ��� ����� ������� ������������ ���� ����� ��������, ������ �� ������. ��� ��������������� �� ����������� ���� �� ���� � �������� �� ����������� ������� ��������� �������� '����������' ��� �������������� ������, ����������� �����������.<hr>\
������� �������: <span class=\"paper_field\"></span><br><br>\
������� ��������, ���������� ������� ��� ������� ����� � ���������� ������: <span class=\"paper_field\"></span><br><br>\
������ ��������, ���������� ������� ��� ������� ����� � ���������� ������:"
P.update_icon()
P.fields = 4
P.updateinfolinks()
P.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
return
if("Scientist")
for(var/obj/structure/noticeboard/assistant_nb/nBoard in world)
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(nBoard.loc)
P.name = "�������� �������"
P.info = "<b>\t �������� ��������� ���� ����� ����� ����� ���������� �������� ������� �������. ��� ����� ���������� ���������� � ����� ������������ ��� ��������������� � ����� ������� ������</b>"
P.update_icon()
P.updateinfolinks()
P.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
return
if("Chef")
for(var/obj/structure/noticeboard/assistant_nb/nBoard in world)
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(nBoard.loc)
P.name = "��-���"
P.info = "<b>\t ��������� ��-���. �� ������� ������� ����������� � ������.</b>"
P.update_icon()
P.updateinfolinks()
P.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
return
if("Quartermaster")
for(var/obj/structure/noticeboard/assistant_nb/nBoard in world)
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(nBoard.loc)
P.name = "�������"
P.info = "<b>\t � ����� �������� ��������� �������. �� ������� ������� ����������� � ��������������.</b>"
P.update_icon()
P.updateinfolinks()
P.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
return

proc/EquipRank(var/mob/living/carbon/human/H, var/rank, var/joined_late = 0)
if(!H) return 0
Expand Down Expand Up @@ -423,7 +548,7 @@ var/global/datum/controller/occupations/job_master
var/obj/item/weapon/storage/backpack/BPK = new/obj/item/weapon/storage/backpack/satchel(H)
new /obj/item/weapon/storage/box/survival(BPK)
H.equip_to_slot_or_del(BPK, slot_back,1)

NBupdate(rank)
H << "<B>You are the [alt_title ? alt_title : rank].</B>"
H << "<b>As the [alt_title ? alt_title : rank] you answer directly to [job.supervisors]. Special circumstances may change this.</b>"
if(job.req_admin_notify)
Expand Down
31 changes: 31 additions & 0 deletions code/game/objects/structures/noticeboard.dm
Original file line number Diff line number Diff line change
Expand Up @@ -78,3 +78,34 @@
usr << browse("<HTML><HEAD><TITLE>[P.name]</TITLE></HEAD><BODY><TT>[P.info]</TT></BODY></HTML>", "window=[P.name]")
onclose(usr, "[P.name]")
return


/obj/structure/noticeboard/assistant_nb

/obj/structure/noticeboard/assistant_nb/attackby(var/obj/item/weapon/O as obj, var/mob/user as mob)
if(istype(O, /obj/item/weapon/paper))
if(notices < 5)
O.add_fingerprint(user)
add_fingerprint(user)
user.drop_item()
O.loc = src
notices++
icon_state = "nboard0[notices]"
for(var/obj/structure/noticeboard/assistant_nb/nBoard in world)
if(nBoard != src)
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(nBoard.loc)
P.name = O:name
P.info = O:info
P.info_links = O:info_links
P.stamps = O:stamps
P.fields = O:fields
P.update_icon()
P.updateinfolinks()
P.stamped = O:stamped
P.overlays = O:overlays
P.loc = nBoard
nBoard.notices++
nBoard.icon_state = "nboard0[nBoard.notices]"
user << "<span class='notice'>You pin the paper to the noticeboard.</span>"
else
user << "<span class='notice'>You reach to pin your paper to the board but hesitate. You are certain your paper will not be seen among the many others already attached.</span>"
Loading