Merge branch 'master' of https://github.com/PolarisSS13/Polaris into Slime_Rework_3

This commit is contained in:
Datraen
2016-05-20 22:39:33 -04:00
20 changed files with 321 additions and 150 deletions

View File

@@ -38,24 +38,37 @@
#define LIFE_HUD 10 // STATUS_HUD that only reports dead or alive
//some colors
#define COLOR_WHITE "#FFFFFF"
#define COLOR_SILVER "#C0C0C0"
#define COLOR_GRAY "#808080"
#define COLOR_BLACK "#000000"
#define COLOR_RED "#FF0000"
#define COLOR_MAROON "#800000"
#define COLOR_YELLOW "#FFFF00"
#define COLOR_OLIVE "#808000"
#define COLOR_LIME "#00FF00"
#define COLOR_GREEN "#008000"
#define COLOR_CYAN "#00FFFF"
#define COLOR_TEAL "#008080"
#define COLOR_BLUE "#0000FF"
#define COLOR_NAVY "#000080"
#define COLOR_PINK "#FF00FF"
#define COLOR_PURPLE "#800080"
#define COLOR_ORANGE "#FF9900"
#define COLOR_LUMINOL "#66FFFF"
#define COLOR_WHITE "#FFFFFF"
#define COLOR_SILVER "#C0C0C0"
#define COLOR_GRAY "#808080"
#define COLOR_BLACK "#000000"
#define COLOR_RED "#FF0000"
#define COLOR_MAROON "#800000"
#define COLOR_YELLOW "#FFFF00"
#define COLOR_OLIVE "#808000"
#define COLOR_LIME "#00FF00"
#define COLOR_GREEN "#008000"
#define COLOR_CYAN "#00FFFF"
#define COLOR_TEAL "#008080"
#define COLOR_BLUE "#0000FF"
#define COLOR_NAVY "#000080"
#define COLOR_PINK "#FF00FF"
#define COLOR_PURPLE "#800080"
#define COLOR_ORANGE "#FF9900"
#define COLOR_LUMINOL "#66FFFF"
#define COLOR_BEIGE "#CEB689"
#define COLOR_BLUE_GRAY "#6A97B0"
#define COLOR_BROWN "#B19664"
#define COLOR_DARK_BROWN "#917448"
#define COLOR_DARK_ORANGE "#B95A00"
#define COLOR_GREEN_GRAY "#8DAF6A"
#define COLOR_RED_GRAY "#AA5F61"
#define COLOR_PALE_BLUE_GRAY "#8BBBD5"
#define COLOR_PALE_GREEN_GRAY "#AED18B"
#define COLOR_PALE_RED_GRAY "#CC9090"
#define COLOR_PALE_PURPLE_GRAY "#BDA2BA"
#define COLOR_PURPLE_GRAY "#A2819E"
// Shuttles.
// These define the time taken for the shuttle to get to the space station, and the time before it leaves again.
@@ -143,19 +156,6 @@
#define PROJECTILE_CONTINUE -1 //if the projectile should continue flying after calling bullet_act()
#define PROJECTILE_FORCE_MISS -2 //if the projectile should treat the attack as a miss (suppresses attack and admin logs) - only applies to mobs.
// Custom colors
#define COLOR_BEIGE "#CEB689"
#define COLOR_BLUE_GRAY "#6A97B0"
#define COLOR_BROWN "#B19664"
#define COLOR_DARK_BROWN "#917448"
#define COLOR_DARK_ORANGE "#B95A00"
#define COLOR_GREEN_GRAY "#8DAF6A"
#define COLOR_RED_GRAY "#AA5F61"
#define COLOR_PALE_BLUE_GRAY "#8BBBD5"
#define COLOR_PALE_GREEN_GRAY "#AED18B"
#define COLOR_PALE_RED_GRAY "#CC9090"
#define COLOR_PALE_PURPLE_GRAY "#BDA2BA"
#define COLOR_PURPLE_GRAY "#A2819E"
// Vending stuff
#define CAT_NORMAL 1

View File

@@ -278,7 +278,7 @@
for(var/datum/data/vending_product/R in product_records)
if(istype(W, R.product_path))
stock(R, user)
stock(W, R, user)
qdel(W)
return
..()

View File

@@ -26,6 +26,7 @@
if(src.locked)
src.icon_state = src.icon_locked
user << "<span class='notice'>You lock \the [src]!</span>"
close_all()
return
else
src.icon_state = src.icon_closed

View File

@@ -58,13 +58,13 @@
icon_state = "sec_corporate"
//item_state = "sec_corporate"
worn_state = "sec_corporate"
rolled_sleeves = -1
rolled_sleeves = 0
/obj/item/clothing/under/rank/warden/corp
icon_state = "warden_corporate"
//item_state = "warden_corporate"
worn_state = "warden_corporate"
rolled_sleeves = -1
rolled_sleeves = 0
/obj/item/clothing/under/tactical
name = "tactical jumpsuit"
@@ -164,7 +164,7 @@
icon_state = "hos_corporate"
//item_state = "hos_corporate"
worn_state = "hos_corporate"
rolled_sleeves = -1
rolled_sleeves = 0
/obj/item/clothing/head/helmet/HoS
name = "Head of Security Hat"

View File

@@ -647,6 +647,9 @@
/obj/item/weapon/reagent_containers/food/snacks/enchiladas
price_tag = 5
/obj/item/weapon/reagent_containers/food/snacks/taco
price_tag = 5
/obj/item/weapon/reagent_containers/food/snacks/monkeysdelight
price_tag = 5

View File

@@ -161,7 +161,7 @@
/obj/machinery/mining/drill/attack_hand(mob/user as mob)
check_supports()
if (panel_open && cell)
if (panel_open && cell && user.Adjacent(src))
user << "You take out \the [cell]."
cell.loc = get_turf(user)
component_parts -= cell

View File

@@ -39,16 +39,16 @@ var/list/holder_mob_icon_cache = list()
/obj/item/weapon/holder/proc/update_state()
if(istype(loc,/turf) || !(contents.len))
held_mob = null
if(held_mob)
held_mob.forceMove(loc)
drop_items()
qdel(src)
/obj/item/weapon/holder/proc/drop_items()
if(contents.len > 1)
for(var/atom/movable/M in contents)
if(M == held_mob)
continue
M.forceMove(get_turf(src))
for(var/atom/movable/M in contents)
if(M == held_mob)
continue
M.forceMove(get_turf(src))
/obj/item/weapon/holder/GetID()
for(var/mob/M in contents)

View File

@@ -150,7 +150,7 @@
the secrets of their empire to their allies."
num_alternate_languages = 2
secondary_langs = list("Skrellian", "Schechi")
name_language = null
name_language = "Skrellian"
min_age = 19
max_age = 80

View File

@@ -580,8 +580,9 @@ var/global/list/damage_icon_parts = list()
return
if(l_ear || r_ear)
var/image/both = image("icon" = null)
// Blank image upon which to layer left & right overlays.
var/image/both = image("icon" = 'icons/effects/effects.dmi', "icon_state" = "nothing")
if(l_ear)
var/image/standing
var/t_type = l_ear.icon_state

View File

@@ -129,6 +129,7 @@ default behaviour is:
playsound(loc, "punch", 25, 1, -1)
visible_message("<span class='warning'>[src] [pick("ran", "slammed")] into \the [AM]!</span>")
src.apply_damage(5, BRUTE)
src << ("<span class='warning'>You just [pick("ran", "slammed")] into \the [AM]!</span>")
return
if (!now_pushing)
now_pushing = 1

View File

@@ -4,37 +4,32 @@
var/datum/species/current_species = all_species[species ? species : "Human"]
set_biological_gender(pick(current_species.genders))
h_style = random_hair_style(biological_gender, species)
f_style = random_facial_hair_style(biological_gender, species)
if(current_species)
if(current_species.flags & HAS_SKIN_TONE)
if(current_species.appearance_flags & HAS_SKIN_TONE)
s_tone = random_skin_tone()
if(current_species.flags & HAS_EYE_COLOR)
if(current_species.appearance_flags & HAS_EYE_COLOR)
randomize_eyes_color()
if(current_species.flags & HAS_SKIN_COLOR)
randomize_skin_color()
if(current_species.flags & HAS_UNDERWEAR)
underwear_top = rand(1,underwear_top_t.len)
underwear_bottom = rand(1,underwear_bottom_t.len)
undershirt = rand(1,undershirt_t.len)
if(current_species.appearance_flags & HAS_UNDERWEAR)
underwear_top = underwear_top_t[pick(underwear_top_t)]
underwear_bottom = underwear_bottom_t[pick(underwear_bottom_t)]
undershirt = undershirt_t[pick(undershirt_t)]
socks = socks_t[pick(socks_t)]
if(current_species.appearance_flags & HAS_HAIR_COLOR)
randomize_hair_color("hair")
randomize_hair_color("facial")
if(current_species.appearance_flags & HAS_SKIN_COLOR)
r_skin = rand (0,255)
g_skin = rand (0,255)
b_skin = rand (0,255)
var/use_head_species
var/obj/item/organ/external/head/temp_head = H.get_organ(BP_HEAD)
if(temp_head)
use_head_species = temp_head.species.get_bodytype()
else
use_head_species = H.species.get_bodytype()
if(use_head_species)
h_style = random_hair_style(biological_gender, species)
f_style = random_facial_hair_style(biological_gender, species)
randomize_hair_color("hair")
randomize_hair_color("facial")
socks = rand(1,socks_t.len)
backbag = 2
var/datum/species/S = all_species[species]
age = rand(S.min_age,S.max_age)
//backbag = 2
backbag = rand(1,4)
pdachoice = rand(1,3)
age = rand(current_species.min_age, current_species.max_age)
b_type = pick(4;"O-", 36;"O+", 3;"A-", 28;"A+", 1;"B-", 20;"B+", 1;"AB-", 5;"AB+")
if(H)
copy_to(H,1)

View File

@@ -21,6 +21,27 @@ If d1 = 0 and d2 = dir, it's a O-X cable, getting from the center of the tile to
If d1 = dir1 and d2 = dir2, it's a full X-X cable, getting from dir1 to dir2
By design, d1 is the smallest direction and d2 is the highest
*/
var/list/possible_cable_coil_colours = list(
"White" = COLOR_WHITE,
"Silver" = COLOR_SILVER,
"Gray" = COLOR_GRAY,
"Black" = COLOR_BLACK,
"Red" = COLOR_RED,
"Maroon" = COLOR_MAROON,
"Yellow" = COLOR_YELLOW,
"Olive" = COLOR_OLIVE,
"Lime" = COLOR_GREEN,
"Green" = COLOR_LIME,
"Cyan" = COLOR_CYAN,
"Teal" = COLOR_TEAL,
"Blue" = COLOR_BLUE,
"Navy" = COLOR_NAVY,
"Pink" = COLOR_PINK,
"Purple" = COLOR_PURPLE,
"Orange" = COLOR_ORANGE,
"Beige" = COLOR_BEIGE,
"Brown" = COLOR_BROWN
)
/obj/structure/cable
level = 1
@@ -464,6 +485,7 @@ obj/structure/cable/proc/cableColor(var/colorC)
slot_flags = SLOT_BELT
item_state = "coil"
attack_verb = list("whipped", "lashed", "disciplined", "flogged")
stacktype = /obj/item/stack/cable_coil
/obj/item/stack/cable_coil/cyborg
name = "cable coil synthesizer"
@@ -472,7 +494,6 @@ obj/structure/cable/proc/cableColor(var/colorC)
matter = null
uses_charge = 1
charge_costs = list(1)
stacktype = /obj/item/stack/cable_coil
/obj/item/stack/cable_coil/suicide_act(mob/user)
if(locate(/obj/item/weapon/stool) in user.loc)
@@ -531,6 +552,17 @@ obj/structure/cable/proc/cableColor(var/colorC)
icon_state = "coil"
name = "cable coil"
/obj/item/stack/cable_coil/proc/set_cable_color(var/selected_color, var/user)
if(!selected_color)
return
var/final_color = possible_cable_coil_colours[selected_color]
if(!final_color)
final_color = possible_cable_coil_colours["Red"]
selected_color = "red"
color = final_color
user << "<span class='notice'>You change \the [src]'s color to [lowertext(selected_color)].</span>"
/obj/item/stack/cable_coil/proc/update_wclass()
if(amount == 1)
w_class = 1.0
@@ -571,42 +603,17 @@ obj/structure/cable/proc/cableColor(var/colorC)
set name = "Change Colour"
set category = "Object"
var/list/possible_colours = list ("Yellow", "Green", "Pink", "Blue", "Orange", "Cyan", "Red")
var/selected_type = input("Pick new colour.", "Cable Colour", null, null) as null|anything in possible_colours
if(selected_type)
switch(selected_type)
if("Yellow")
color = COLOR_YELLOW
if("Green")
color = COLOR_LIME
if("Pink")
color = COLOR_PINK
if("Blue")
color = COLOR_BLUE
if("Orange")
color = COLOR_ORANGE
if("Cyan")
color = COLOR_CYAN
else
color = COLOR_RED
usr << "You change your cable coil's colour to [selected_type]"
var/selected_type = input("Pick new colour.", "Cable Colour", null, null) as null|anything in possible_cable_coil_colours
set_cable_color(selected_type, usr)
// Items usable on a cable coil :
// - Wirecutters : cut them duh !
// - Cable coil : merge cables
/obj/item/stack/cable_coil/proc/can_merge(var/obj/item/stack/cable_coil/C)
return color == C.color
/obj/item/stack/cable_coil/cyborg/can_merge()
return 1
/obj/item/stack/cable_coil/transfer_to(obj/item/stack/cable_coil/S)
if(!istype(S))
world << 1
return
if(!can_merge(S))
return
..()
/obj/item/stack/cable_coil/use()
@@ -880,7 +887,51 @@ obj/structure/cable/proc/cableColor(var/colorC)
stacktype = /obj/item/stack/cable_coil
color = COLOR_WHITE
/obj/item/stack/cable_coil/silver
stacktype = /obj/item/stack/cable_coil
color = COLOR_SILVER
/obj/item/stack/cable_coil/gray
stacktype = /obj/item/stack/cable_coil
color = COLOR_GRAY
/obj/item/stack/cable_coil/black
stacktype = /obj/item/stack/cable_coil
color = COLOR_BLACK
/obj/item/stack/cable_coil/maroon
stacktype = /obj/item/stack/cable_coil
color = COLOR_MAROON
/obj/item/stack/cable_coil/olive
stacktype = /obj/item/stack/cable_coil
color = COLOR_OLIVE
/obj/item/stack/cable_coil/lime
stacktype = /obj/item/stack/cable_coil
color = COLOR_LIME
/obj/item/stack/cable_coil/teal
stacktype = /obj/item/stack/cable_coil
color = COLOR_TEAL
/obj/item/stack/cable_coil/navy
stacktype = /obj/item/stack/cable_coil
color = COLOR_NAVY
/obj/item/stack/cable_coil/purple
stacktype = /obj/item/stack/cable_coil
color = COLOR_PURPLE
/obj/item/stack/cable_coil/beige
stacktype = /obj/item/stack/cable_coil
color = COLOR_BEIGE
/obj/item/stack/cable_coil/brown
stacktype = /obj/item/stack/cable_coil
color = COLOR_BROWN
/obj/item/stack/cable_coil/random/New()
stacktype = /obj/item/stack/cable_coil
color = pick(COLOR_RED, COLOR_BLUE, COLOR_LIME, COLOR_WHITE, COLOR_PINK, COLOR_YELLOW, COLOR_CYAN)
color = pick(COLOR_RED, COLOR_BLUE, COLOR_LIME, COLOR_WHITE, COLOR_PINK, COLOR_YELLOW, COLOR_CYAN, COLOR_SILVER, COLOR_GRAY, COLOR_BLACK, COLOR_MAROON, COLOR_OLIVE, COLOR_LIME, COLOR_TEAL, COLOR_NAVY, COLOR_PURPLE, COLOR_BEIGE, COLOR_BROWN)
..()

View File

@@ -110,6 +110,7 @@ proc/do_surgery(mob/living/carbon/M, mob/living/user, obj/item/tool)
if (user.a_intent == I_HELP)
user << "<span class='warning'>You can't see any useful way to use [tool] on [M].</span>"
return 1
return 0
proc/sort_surgeries()

View File

@@ -0,0 +1,37 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
#################################
# Your name.
author: Yoshax
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- tweak: "Cables of any color can now be merged."
- tweak: "More and different colors are now available to be used by cable."

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 430 KiB

After

Width:  |  Height:  |  Size: 432 KiB

View File

@@ -242,6 +242,7 @@
.uiIcon16.icon-person64 { background-image: url(uiIcons64.png); background-position: -320px 0; width: 64px; height: 64px; }
.uiIcon16.icon-newspaper64 { background-image: url(uiIcons64.png); background-position: 0 -64px; width: 64px; height: 64px; }
.uiIcon16.icon-note64 { background-image: url(uiIcons64.png); background-position: -64px -64px; width: 64px; height: 64px; }
.uiIcon16.icon-close64 { background-image: url(uiIcons64.png); background-position: -128px -64px; width: 64px; height: 64px; }
.mapIcon16 {
position: absolute;

View File

@@ -320,6 +320,19 @@ div.notice {
overflow-y: auto;
}
.statusDisplayComm {
width: 100%;
background: rgba(0, 0, 0, 0.5);
color: #ffffff;
padding-bottom: 4px;
border-top: 0 none;
border-left: 0 none;
border-right: 0 none;
border-bottom: 2px inset #40628a;
margin: 3px 0;
overflow: hidden;
}
.statusLabel {
width: 138px;
float: left;
@@ -611,10 +624,10 @@ div.homeContainer {
}
div.homeScreen {
width: 90%;
padding: 0 20px 0 20px;
}
.link64, .linkOn64, .linkOff64, .selected64, .disabled64, .yellowButton64, .redButton64 {
.link64 {
float: left;
min-width: 15px;
max-width: 68px;
@@ -622,22 +635,90 @@ div.homeScreen {
text-align: center;
color: #ffffff;
text-decoration: none;
background: #40628a;
background: rgba(64, 98, 138, 0.6);
border: 1px solid #161616;
padding: 0 0 4px 0;
margin: 0 0 30px 5.5%;
cursor: default;
white-space: nowrap;
border-radius: 15px;
border-radius: 10px;
}
.linkOn64, a.linkOn:link, a.linkOn:visited, a.linkOn:active, a.linkOn:hover, .selected, a.selected:link, a.selected:visited, a.selected:active, a.selected:hover {
color: #ffffff;
background: #2f943c;
.link64:hover {
font-size: 13px;
}
.linkOff64, a.linkOff:link, a.linkOff:visited, a.linkOff:active, a.linkOff:hover, .disabled, a.disabled:link, a.disabled:visited, a.disabled:active, a.disabled:hover {
/*Communicator Dialing*/
.dialPad {
clear: both;
text-align: center;
margin: auto;
}
.dialPadKeys {
float: left;
width: 47px;
height: 47px;
font-size: 32px;
text-align: center;
color: #ffffff;
background: #999999;
border-color: #666666;
text-decoration: none;
background: rgba(64, 98, 138, 0.15);
border: 1px inset rgba(100, 100, 100, 0.25);
cursor: default;
line-height: 47px;
}
.dialPadKeys:hover {
background: rgba(80, 122, 172, 0.5);
}
.dialPadButtons {
float: left;
width: 63.2px;
height: 63.2px;
text-align: center;
color: #ffffff;
text-decoration: none;
background: rgba(64, 98, 138, 0.15);
border: 1px inset rgba(100, 100, 100, 0.25);
padding: 0 0 4px 0;
cursor: default;
margin-bottom: 25px;
}
.dialPadButtons:hover {
background: rgba(80, 122, 172, 0.5);
font-size: 13px;
}
.dialPadAddress {
float: left;
width: 192px;
height: 18px;
background: rgba(64, 98, 138, 0.15);
color: #ffffff;
border-left: 1px inset #40628a;
border-top: 1px inset #40628a;
border-bottom: 1px inset #40628a;
}
.dialPadAddress:hover{
background: rgba(80, 122, 172, 0.5);
}
.dialPadClear {
float: left;
width: 19%;
height: 18px;
background: rgba(64, 98, 138, 0.15);
color: #ffffff;
border-right: 1px inset #40628a;
border-top: 1px inset #40628a;
border-bottom: 1px inset #40628a;
}
.dialPadClear:hover{
background: rgba(80, 122, 172, 0.5);
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -3,7 +3,7 @@ Title: Communicator UI
Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
-->
<div class="statusDisplay" style="overflow: auto;">
<div class="statusDisplayComm">
<div class="item">
<div class="itemContent" style="width: 100%; text-align: center;">
<span class="average">{{:data.time}} | </span>
@@ -36,50 +36,49 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
<HR>
<div class="itemContent" style="width: 100%;">{{:helper.link('Home', 'home', {'switch_tab' : 1})}}</div><BR>
<div class="item">
<div class="itemLabel">
<div class="itemLabelWide">
Target EPv2 Address:
</div>
<div class="itemContent">
<div style="float: left; width: 180px;">{{:data.targetAddress}}</div>
</div>
<div class="itemContent">
<div style="float: left; width: 180px;">{{:helper.link('Write', 'pencil', {'write_target_address' : 1})}} {{:helper.link('Clear', 'close', {'clear_target_address' : 1})}}</div>
<div style="clear: both;">
{{:helper.link(data.targetAddress, 'pencil', {'write_target_address' : 1}, null, 'dialPadAddress')}}
{{:helper.link('Clear', 'close', {'clear_target_address' : 1}, null, 'dialPadClear')}}
</div>
</div>
</div>
<div class="item">
<div class="itemContent">
<div style='float: left; width: 300px;'>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('0', null, {'add_hex' : '0'})}}
{{:helper.link('1', null, {'add_hex' : '1'})}}
{{:helper.link('2', null, {'add_hex' : '2'})}}
{{:helper.link('3', null, {'add_hex' : '3'})}}
</div>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('4', null, {'add_hex' : '4'})}}
{{:helper.link('5', null, {'add_hex' : '5'})}}
{{:helper.link('6', null, {'add_hex' : '6'})}}
{{:helper.link('7', null, {'add_hex' : '7'})}}
</div>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('8', null, {'add_hex' : '8'})}}
{{:helper.link('9', null, {'add_hex' : '9'})}}
{{:helper.link('A', null, {'add_hex' : 'a'})}}
{{:helper.link('B', null, {'add_hex' : 'b'})}}
</div>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('C', null, {'add_hex' : 'c'})}}
{{:helper.link('D', null, {'add_hex' : 'd'})}}
{{:helper.link('E', null, {'add_hex' : 'e'})}}
{{:helper.link('F', null, {'add_hex' : 'f'})}}
</div>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('Dial', 'signal-diag', {'dial' : data.targetAddress})}}
{{:helper.link('Message', 'comment', {'message' : data.targetAddress, 'switch_tab' : 4})}}
{{:helper.link('Hang Up', 'close', {'hang_up' : '1'})}}
</div>
<div class="dialPad">
<div style="clear: both; padding-top: 1px;">
{{:helper.link('0', null, {'add_hex' : '0'}, null, 'dialPadKeys')}}
{{:helper.link('1', null, {'add_hex' : '1'}, null, 'dialPadKeys')}}
{{:helper.link('2', null, {'add_hex' : '2'}, null, 'dialPadKeys')}}
{{:helper.link('3', null, {'add_hex' : '3'}, null, 'dialPadKeys')}}
</div>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('4', null, {'add_hex' : '4'}, null, 'dialPadKeys')}}
{{:helper.link('5', null, {'add_hex' : '5'}, null, 'dialPadKeys')}}
{{:helper.link('6', null, {'add_hex' : '6'}, null, 'dialPadKeys')}}
{{:helper.link('7', null, {'add_hex' : '7'}, null, 'dialPadKeys')}}
</div>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('8', null, {'add_hex' : '8'}, null, 'dialPadKeys')}}
{{:helper.link('9', null, {'add_hex' : '9'}, null, 'dialPadKeys')}}
{{:helper.link('A', null, {'add_hex' : 'a'}, null, 'dialPadKeys')}}
{{:helper.link('B', null, {'add_hex' : 'b'}, null, 'dialPadKeys')}}
</div>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('C', null, {'add_hex' : 'c'}, null, 'dialPadKeys')}}
{{:helper.link('D', null, {'add_hex' : 'd'}, null, 'dialPadKeys')}}
{{:helper.link('E', null, {'add_hex' : 'e'}, null, 'dialPadKeys')}}
{{:helper.link('F', null, {'add_hex' : 'f'}, null, 'dialPadKeys')}}
</div>
<div style="clear: both; padding-top: 1px;">
{{:helper.link('Dial', 'phone64', {'dial' : data.targetAddress}, null, 'dialPadButtons')}}
{{:helper.link('Message', 'comment64', {'message' : data.targetAddress, 'switch_tab' : 4}, null, 'dialPadButtons')}}
{{:helper.link('Hang Up', 'close64', {'hang_up' : '1'}, null, 'dialPadButtons')}}
</div>
</div>
</div>
@@ -148,7 +147,7 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
{{:value.name}}
</div>
<div class="itemContent">
<div style="float: left; width: 300px;">{{:value.address}}</div> {{:helper.link('Copy', 'pencil', {'copy' : value.address, 'switch_tab' : 2})}}
<div style="float: left; width: 100%;">{{:value.address}}</div> {{:helper.link('Copy', 'pencil', {'copy' : value.address, 'switch_tab' : 2})}}
</div>
</div>
{{/for}}