From 3c84f13119392ed1f9cc557caf279e4768a9dc3a Mon Sep 17 00:00:00 2001 From: Casey Date: Thu, 23 Jun 2022 22:14:30 -0400 Subject: [PATCH] XIII tweaks --- code/modules/mob/living/silicon/pai/pai.dm | 48 ++++++++++++++++- code/modules/mob/living/silicon/pai/pai_vr.dm | 49 ++++++++++++++++++ icons/mob/pai_vr32x64.dmi | Bin 0 -> 602 bytes icons/mob/pai_vr64x32.dmi | Bin 0 -> 507 bytes pai_vr64x32.dmi | Bin 0 -> 186 bytes 5 files changed, 96 insertions(+), 1 deletion(-) create mode 100644 icons/mob/pai_vr32x64.dmi create mode 100644 icons/mob/pai_vr64x32.dmi create mode 100644 pai_vr64x32.dmi diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index ed09bebe0c..0055e46c8c 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -247,7 +247,7 @@ if(world.time <= last_special) return - + last_special = world.time + 100 if(istype(card.loc, /obj/machinery)) // VOREStation edit, this statement allows pAIs stuck in a machine to eject themselves. @@ -345,6 +345,13 @@ var/obj/item/weapon/rig/rig = src.get_rig() if(istype(rig)) rig.force_rest(src) +<<<<<<< HEAD +======= + return + else if(chassis == "13") + resting = !resting + //update_transform() I want this to make you ROTATE like normal HUMANS do! But! There's lots of problems and I don't know how to fix them! +>>>>>>> 3669e7afab... Merge pull request #13155 from Very-Soft/typexiii else resting = !resting icon_state = resting ? "[chassis]_rest" : "[chassis]" @@ -353,6 +360,45 @@ canmove = !resting +<<<<<<< HEAD +======= +/* +/mob/living/silicon/pai/update_transform() + + var/desired_scale_x = size_multiplier * icon_scale_x + var/desired_scale_y = size_multiplier * icon_scale_y + + // Now for the regular stuff. + var/matrix/M = matrix() + M.Scale(desired_scale_x, desired_scale_y) + M.Translate(0, (vis_height/2)*(desired_scale_y-1)) + + if(chassis != "13") + appearance_flags |= PIXEL_SCALE + + var/anim_time = 3 + + if(resting) + M.Turn(90) + M.Scale(desired_scale_y, desired_scale_x) + if(holo_icon_dimension_X == 64 && holo_icon_dimension_Y == 64) + M.Translate(13,-22) + else if(holo_icon_dimension_X == 32 && holo_icon_dimension_Y == 64) + M.Translate(1,-22) + else if(holo_icon_dimension_X == 64 && holo_icon_dimension_Y == 32) + M.Translate(13,-6) + else + M.Translate(1,-6) + layer = MOB_LAYER -0.01 // Fix for a byond bug where turf entry order no longer matters + else + M.Scale(desired_scale_x, desired_scale_y) + M.Translate(0, (vis_height/2)*(desired_scale_y-1)) + layer = MOB_LAYER // Fix for a byond bug where turf entry order no longer matters + animate(src, transform = M, time = anim_time) + src.transform = M + handle_status_indicators() +*/ +>>>>>>> 3669e7afab... Merge pull request #13155 from Very-Soft/typexiii //Overriding this will stop a number of headaches down the track. /mob/living/silicon/pai/attackby(obj/item/weapon/W as obj, mob/user as mob) if(W.force) diff --git a/code/modules/mob/living/silicon/pai/pai_vr.dm b/code/modules/mob/living/silicon/pai/pai_vr.dm index 0a2f421d07..9985110f7f 100644 --- a/code/modules/mob/living/silicon/pai/pai_vr.dm +++ b/code/modules/mob/living/silicon/pai/pai_vr.dm @@ -6,6 +6,13 @@ var/hide_glow = FALSE var/image/eye_layer = null // Holds the eye overlay. var/eye_color = "#00ff0d" +<<<<<<< HEAD +======= + var/icon/holo_icon + var/icon/holo_icon_north + var/holo_icon_dimension_X = 32 + var/holo_icon_dimension_Y = 32 +>>>>>>> 3669e7afab... Merge pull request #13155 from Very-Soft/typexiii var/global/list/wide_chassis = list( "rat", "panther", @@ -78,6 +85,14 @@ /mob/living/silicon/pai/update_icon() //Some functions cause this to occur, such as resting ..() +<<<<<<< HEAD +======= + if(chassis == "13") + icon = holo_icon + add_eyes() + return + +>>>>>>> 3669e7afab... Merge pull request #13155 from Very-Soft/typexiii update_fullness_pai() if(!people_eaten && !resting) @@ -106,6 +121,13 @@ /mob/living/silicon/pai/update_icons() //And other functions cause this to occur, such as digesting someone. ..() +<<<<<<< HEAD +======= + if(chassis == "13") + icon = holo_icon + add_eyes() + return +>>>>>>> 3669e7afab... Merge pull request #13155 from Very-Soft/typexiii update_fullness_pai() if(!people_eaten && !resting) icon_state = "[chassis]" @@ -186,6 +208,7 @@ /mob/living/silicon/pai/proc/add_eyes() remove_eyes() +<<<<<<< HEAD if(chassis in allows_eye_color) if(!eye_layer) eye_layer = image(icon, "[icon_state]-eyes") @@ -194,6 +217,32 @@ if(eye_glow && !hide_glow) eye_layer.plane = PLANE_LIGHTING_ABOVE add_overlay(eye_layer) +======= + if(chassis == "13") + if(holo_icon.Width() > 32) + holo_icon_dimension_X = 64 + pixel_x = -16 + default_pixel_x = -16 + if(holo_icon.Height() > 32) + holo_icon_dimension_Y = 64 + if(holo_icon_dimension_X == 32 && holo_icon_dimension_Y == 32) + eye_layer = image('icons/mob/pai_vr.dmi', "type13-eyes") + else if(holo_icon_dimension_X == 32 && holo_icon_dimension_Y == 64) + eye_layer = image('icons/mob/pai_vr32x64.dmi', "type13-eyes") + else if(holo_icon_dimension_X == 64 && holo_icon_dimension_Y == 32) + eye_layer = image('icons/mob/pai_vr64x32.dmi', "type13-eyes") + else if(holo_icon_dimension_X == 64 && holo_icon_dimension_Y == 64) + eye_layer = image('icons/mob/pai_vr64x64.dmi', "type13-eyes") + else + else if(chassis in allows_eye_color) + eye_layer = image(icon, "[icon_state]-eyes") + else return + eye_layer.appearance_flags = appearance_flags + eye_layer.color = eye_color + if(eye_glow && !hide_glow) + eye_layer.plane = PLANE_LIGHTING_ABOVE + add_overlay(eye_layer) +>>>>>>> 3669e7afab... Merge pull request #13155 from Very-Soft/typexiii /mob/living/silicon/pai/proc/remove_eyes() cut_overlay(eye_layer) diff --git a/icons/mob/pai_vr32x64.dmi b/icons/mob/pai_vr32x64.dmi new file mode 100644 index 0000000000000000000000000000000000000000..02c15d3de82c33c029146c16fd8725c76a7bdccf GIT binary patch literal 602 zcmeAS@N?(olHy`uVBq!ia0vp^4nW+%!3HFEH|A#nsq(6jh!U67;^d;tf|AVqJO+k} zIjjc_`I-%QST9)G9Th*bmdhn4Zq))U<~xj>&PF1uZY+BAZBO`P+nPr$25weMGwjL? z{(N?QH(%U4p+tA5N~JfO+k4MkGseZ6UaR|lpWwYkY5S8!2^B@zGxsk_FbPSX!E{LC zCEL3a85v7{xep8sjPpEQ978JRyuIU?cgTQ&!SPoAPW#nABL8fTt6HHYkZ`F_sZ4*T z%D1$}A5MR^<=%cdwemXCET#-bU&bvB%NU{@f*EudXf}vl5OLtn;99_H!g_%?=`ekn zYzuon?tEU^UzB;roBzK1 z^ZnKb=6tTn{$P0Q`JB&xIu5-0Gd*m<)SvRdIPXaPS)cdsRLt%*4(-vb>uOJ}zQ6A< z>y6oAjO00wG|wgUJ05xcx%%wS5{8ZK2j&&q$vV7I-0*zPUW=8$5Q*6PVf{DGh=-EX spE7)Zqy9nOW_P+Hzav41RsLj%XLigCHz@b-0wxv)Pgg&ebxsLQ0N?NL1ONa4 literal 0 HcmV?d00001 diff --git a/icons/mob/pai_vr64x32.dmi b/icons/mob/pai_vr64x32.dmi new file mode 100644 index 0000000000000000000000000000000000000000..468e5cd216ef92d6dd6aac992cb7d1d72dbda3a7 GIT binary patch literal 507 zcmeAS@N?(olHy`uVBq!ia0vp^4M6O`!3HERU8}DLQsq@45hX6E#mPmP1tppJc?=8{ zb65`=@--XquwJmVJ1Tx=EtgA9+^Pjy%y$?$osC3R-B|SK+n(^pwl$Ah4BV`iX4sV( z{Q2zqZoas8!k2k5llG`GFV6PNHDg@7>9xA=_X*xxl(s)vlu%KWJ#+t}1e1{D8BB*H zUb4O0DkHdS>tM9e- zaz}Z~_{_MxYhCw_b1#JhrZFCnWSGNv;3(6IRaJIc%0dSoJI9;5v$`<7co#SA=_X69 z2T%Spbfz-U%99 zKJ$?wteukTAW;zSx}OhpU1#ZF(){zps4iwm*9erU!Q1s>uQ}lb3S-OsKG_! z2aj~l`)HnIDC+6mVPPC(eA(EmLB?2EFO@aiUVH-^!zU^JqWUEv?||m=db&7