From 61f1c8a05c5c5bb10486f59267c3b6b2865e5d8e Mon Sep 17 00:00:00 2001 From: Galactic Chimp <63882831+GalacticChimp@users.noreply.github.com> Date: Sun, 3 Oct 2021 06:56:29 +0200 Subject: [PATCH] #3898 open sprite field for drink comp (#4235) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * temp * #3898 some progress on DrinkCanVisualizer * Fixed implementation * Moved drink can sprite layer definition to abstract parent * Added open drink can sprites * #3898 - fixes for drink cans' sprite field after merge + moved UpdateAppeareance from DrinkComponent to DrinkSystem * Update Content.Server/Nutrition/EntitySystems/DrinkSystem.cs * #3898 removed obsolete comment Co-authored-by: Javier Guardia Fernández --- .../Visualizers/DrinkCanVisualizer.cs | 40 ++++++++++++++++++ .../Nutrition/Components/DrinkComponent.cs | 27 ++++-------- .../Nutrition/EntitySystems/DrinkSystem.cs | 23 ++++++++-- .../Components/SharedFoodComponent.cs | 20 +++++---- .../Objects/Consumable/drinks_cans.yml | 22 +++++----- .../Drinks/changelingsting.rsi/icon_open.png | Bin 0 -> 1066 bytes .../Drinks/changelingsting.rsi/meta.json | 36 +++++++++++++++- .../Consumable/Drinks/cola.rsi/icon_open.png | Bin 0 -> 504 bytes .../Consumable/Drinks/cola.rsi/meta.json | 3 ++ .../Drinks/dr_gibb.rsi/icon_open.png | Bin 0 -> 535 bytes .../Consumable/Drinks/dr_gibb.rsi/meta.json | 3 ++ .../Drinks/energy_drink.rsi/icon_open.png | Bin 0 -> 517 bytes .../Drinks/energy_drink.rsi/meta.json | 3 ++ .../Drinks/ice_tea_can.rsi/icon_open.png | Bin 0 -> 549 bytes .../Drinks/ice_tea_can.rsi/meta.json | 18 +++++++- .../Drinks/lemon-lime.rsi/icon_open.png | Bin 0 -> 477 bytes .../Drinks/lemon-lime.rsi/meta.json | 3 ++ .../Drinks/purple_can.rsi/icon_open.png | Bin 0 -> 475 bytes .../Drinks/purple_can.rsi/meta.json | 3 ++ .../Drinks/space-up.rsi/icon_open.png | Bin 0 -> 480 bytes .../Consumable/Drinks/space-up.rsi/meta.json | 3 ++ .../space_mountain_wind.rsi/icon_open.png | Bin 0 -> 504 bytes .../Drinks/space_mountain_wind.rsi/meta.json | 3 ++ .../Drinks/starkist.rsi/icon_open.png | Bin 0 -> 520 bytes .../Consumable/Drinks/starkist.rsi/meta.json | 3 ++ .../Drinks/thirteen_loko.rsi/icon_open.png | Bin 0 -> 493 bytes .../Drinks/thirteen_loko.rsi/meta.json | 3 ++ 27 files changed, 169 insertions(+), 44 deletions(-) create mode 100644 Content.Client/Nutrition/Visualizers/DrinkCanVisualizer.cs create mode 100644 Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/cola.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/dr_gibb.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/lemon-lime.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/icon_open.png create mode 100644 Resources/Textures/Objects/Consumable/Drinks/thirteen_loko.rsi/icon_open.png diff --git a/Content.Client/Nutrition/Visualizers/DrinkCanVisualizer.cs b/Content.Client/Nutrition/Visualizers/DrinkCanVisualizer.cs new file mode 100644 index 0000000000..37671a38c3 --- /dev/null +++ b/Content.Client/Nutrition/Visualizers/DrinkCanVisualizer.cs @@ -0,0 +1,40 @@ +using Content.Shared.Nutrition.Components; +using JetBrains.Annotations; +using Robust.Client.GameObjects; +using Robust.Shared.Serialization.Manager.Attributes; + +namespace Content.Client.Nutrition.Visualizers +{ + [UsedImplicitly] + public sealed class DrinkCanVisualizer : AppearanceVisualizer + { + [DataField("stateClosed")] + private string? _stateClosed; + + [DataField("stateOpen")] + private string? _stateOpen; + + public override void OnChangeData(AppearanceComponent component) + { + base.OnChangeData(component); + + if (!component.Owner.TryGetComponent(out var sprite)) + { + return; + } + + if (component.TryGetData(DrinkCanStateVisual.Opened, out var opened) && opened) + { + sprite.LayerSetState(DrinkCanVisualLayers.Icon, $"{_stateOpen}"); + return; + } + + sprite.LayerSetState(DrinkCanVisualLayers.Icon, $"{_stateClosed}"); + } + } + + public enum DrinkCanVisualLayers : byte + { + Icon = 0 + } +} diff --git a/Content.Server/Nutrition/Components/DrinkComponent.cs b/Content.Server/Nutrition/Components/DrinkComponent.cs index 2a9104e7e3..1151fbc97d 100644 --- a/Content.Server/Nutrition/Components/DrinkComponent.cs +++ b/Content.Server/Nutrition/Components/DrinkComponent.cs @@ -1,5 +1,3 @@ -using System.Linq; -using System.Threading.Tasks; using Content.Server.Body.Behavior; using Content.Server.Fluids.Components; using Content.Shared.Body.Components; @@ -21,6 +19,8 @@ using Robust.Shared.Player; using Robust.Shared.Serialization.Manager.Attributes; using Robust.Shared.Utility; using Robust.Shared.ViewVariables; +using System.Linq; +using System.Threading.Tasks; namespace Content.Server.Nutrition.Components { @@ -61,7 +61,7 @@ namespace Content.Server.Nutrition.Components } _opened = value; - OpenedChanged(); + OnOpenedChanged(); } } @@ -81,7 +81,7 @@ namespace Content.Server.Nutrition.Components [DataField("burstSound")] public SoundSpecifier BurstSound = new SoundPathSpecifier("/Audio/Effects/flash_bang.ogg"); - private void OpenedChanged() + private void OnOpenedChanged() { var solutionSys = EntitySystem.Get(); if (!solutionSys.TryGetSolution(Owner, SolutionName, out _)) @@ -89,6 +89,11 @@ namespace Content.Server.Nutrition.Components return; } + if (Owner.TryGetComponent(out AppearanceComponent? appearance)) + { + appearance.SetData(DrinkCanStateVisual.Opened, Opened); + } + if (Opened) { var refillable = Owner.EnsureComponent(); @@ -103,19 +108,6 @@ namespace Content.Server.Nutrition.Components } } - // TODO move to DrinkSystem - public void UpdateAppearance() - { - if (!Owner.TryGetComponent(out AppearanceComponent? appearance) || - !Owner.HasComponent()) - { - return; - } - - var drainAvailable = EntitySystem.Get().DrainAvailable(Owner); - appearance.SetData(SharedFoodComponent.FoodVisuals.Visual, drainAvailable.Float()); - } - bool IUse.UseEntity(UseEntityEventArgs args) { if (!Opened) @@ -218,7 +210,6 @@ namespace Content.Server.Nutrition.Components SoundSystem.Play(Filter.Pvs(target), _useSound.GetSound(), target, AudioParams.Default.WithVolume(-2f)); target.PopupMessage(Loc.GetString("drink-component-try-use-drink-success-slurp")); - UpdateAppearance(); // TODO: Account for partial transfer. diff --git a/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs b/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs index 2b5f7fb0d8..3a458f9681 100644 --- a/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs +++ b/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs @@ -1,9 +1,11 @@ -using Content.Server.Fluids.Components; +using Content.Server.Fluids.Components; using Content.Server.Nutrition.Components; using Content.Shared.Chemistry.Components.SolutionManager; using Content.Shared.Chemistry.EntitySystems; +using Content.Shared.Nutrition.Components; using Content.Shared.Throwing; using JetBrains.Annotations; +using Robust.Server.GameObjects; using Robust.Shared.Audio; using Robust.Shared.GameObjects; using Robust.Shared.IoC; @@ -35,6 +37,7 @@ namespace Content.Server.Nutrition.EntitySystems _solutionContainerSystem.TryGetDrainableSolution(uid, out var interactions)) { component.Opened = true; + UpdateAppearance(component); var entity = EntityManager.GetEntity(uid); @@ -60,13 +63,25 @@ namespace Content.Server.Nutrition.EntitySystems _solutionContainerSystem.EnsureSolution(owner, component.SolutionName); } - component.UpdateAppearance(); + UpdateAppearance(component); } - private void OnSolutionChange(EntityUid uid, DrinkComponent component, SolutionChangedEvent args) { - component.UpdateAppearance(); + UpdateAppearance(component); + } + + public void UpdateAppearance(DrinkComponent component) + { + if (!component.Owner.TryGetComponent(out AppearanceComponent? appearance) || + !component.Owner.HasComponent()) + { + return; + } + + var drainAvailable = Get().DrainAvailable(component.Owner); + appearance.SetData(FoodVisuals.Visual, drainAvailable.Float()); + appearance.SetData(DrinkCanStateVisual.Opened, component.Opened); } } } diff --git a/Content.Shared/Nutrition/Components/SharedFoodComponent.cs b/Content.Shared/Nutrition/Components/SharedFoodComponent.cs index 91c3b6b8c4..382d85e356 100644 --- a/Content.Shared/Nutrition/Components/SharedFoodComponent.cs +++ b/Content.Shared/Nutrition/Components/SharedFoodComponent.cs @@ -3,14 +3,18 @@ using Robust.Shared.Serialization; namespace Content.Shared.Nutrition.Components { - public class SharedFoodComponent + // TODO: Remove maybe? Add visualizer for food + [Serializable, NetSerializable] + public enum FoodVisuals : byte { - // TODO: Remove maybe? Add visualizer for food - [Serializable, NetSerializable] - public enum FoodVisuals - { - Visual, - MaxUses, - } + Visual, + MaxUses, + } + + [Serializable, NetSerializable] + public enum DrinkCanStateVisual : byte + { + Closed, + Opened } } diff --git a/Resources/Prototypes/Entities/Objects/Consumable/drinks_cans.yml b/Resources/Prototypes/Entities/Objects/Consumable/drinks_cans.yml index b6c4f89641..61b30ea2ff 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/drinks_cans.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/drinks_cans.yml @@ -23,8 +23,17 @@ type: TransferAmountBoundUserInterface - type: Sprite state: icon - - type: Spillable + layers: + - state: icon + map: ["enum.DrinkCanVisualLayers.Icon"] + netsync: false + - type: DrainableSolution solution: drink + - type: Appearance + visuals: + - type: DrinkCanVisualizer + stateClosed: icon + stateOpen: icon_open - type: entity parent: DrinkCanBaseFull @@ -37,7 +46,6 @@ - Cola - type: Sprite sprite: Objects/Consumable/Drinks/cola.rsi - - type: Item sprite: Objects/Consumable/Drinks/cola.rsi @@ -49,7 +57,6 @@ components: - type: Sprite sprite: Objects/Consumable/Drinks/ice_tea_can.rsi - - type: Item sprite: Objects/Consumable/Drinks/ice_tea_can.rsi @@ -61,7 +68,6 @@ components: - type: Sprite sprite: Objects/Consumable/Drinks/lemon-lime.rsi - - type: Item sprite: Objects/Consumable/Drinks/lemon-lime.rsi @@ -73,7 +79,6 @@ components: - type: Sprite sprite: Objects/Consumable/Drinks/purple_can.rsi - - type: Item sprite: Objects/Consumable/Drinks/purple_can.rsi @@ -85,7 +90,6 @@ components: - type: Sprite sprite: Objects/Consumable/Drinks/space_mountain_wind.rsi - - type: Item sprite: Objects/Consumable/Drinks/space_mountain_wind.rsi @@ -97,7 +101,6 @@ components: - type: Sprite sprite: Objects/Consumable/Drinks/space-up.rsi - - type: Item sprite: Objects/Consumable/Drinks/space-up.rsi @@ -109,7 +112,6 @@ components: - type: Sprite sprite: Objects/Consumable/Drinks/starkist.rsi - - type: Item sprite: Objects/Consumable/Drinks/starkist.rsi @@ -128,7 +130,6 @@ Quantity: 20 - type: Sprite sprite: Objects/Consumable/Drinks/thirteen_loko.rsi - - type: Item sprite: Objects/Consumable/Drinks/thirteen_loko.rsi @@ -141,7 +142,6 @@ - type: Drink - type: Sprite sprite: Objects/Consumable/Drinks/changelingsting.rsi - - type: Item sprite: Objects/Consumable/Drinks/changelingsting.rsi @@ -154,7 +154,6 @@ - type: Drink - type: Sprite sprite: Objects/Consumable/Drinks/dr_gibb.rsi - - type: Item sprite: Objects/Consumable/Drinks/dr_gibb.rsi @@ -167,7 +166,6 @@ - type: Drink - type: Sprite sprite: Objects/Consumable/Drinks/energy_drink.rsi - - type: Item sprite: Objects/Consumable/Drinks/energy_drink.rsi diff --git a/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..6d6397dc9014e5e653b9fa3dae0c8c6a4f3c1836 GIT binary patch literal 1066 zcmeAS@N?(olHy`uVBq!ia0vp^2|(R|DNig)WpMX#0UD!FmRh7>tY=c#y5u2H2}enRpF2>-7|3SuYS5GiQY`6? zzK#qG8~eHcB(eheY)RhkE)4%caKYZ?lNlJ8TRmMILn`LHoxQ(X*iq#8_an~~PE4J* z?Ukt0EZ6mx8!mp^z;{FK!F`2YH##Ct9n57p=;Zy;U3=0u6@{4cl}`+=OKZ(s0d zI#^BGo$=?2pZc92&-g!^t3HdjVBk8~{>zEoLGedG{0oLNbAATL|6sUeVSJnQsNjLU zy}f60#6PF@t2da;oAGwj=EEWmf$(Rv=wH}$m_gtdK=S$>+bE55;y+yUiY>5dSFO zqC$`SZ}Up#4`4`}x>%=%a%-Sm+`@lVzLNBjp& z=f_EIWSwws)_GBenSBCmzs-+*XYgq@W~i6;n#ok){J`u!@592qiG1(&Z?KWy`zz7V zUcco_&a>%U3fzg`<`(=oX{~r>k8qld{r9;AC-)y!uR5yL@Lv#Hy_Lc?agaXAhYFMO3zgb%EZsb+@$dvcHuHJif6Fqm=D8Uv-=J zGvhf&!I2=8H^YmK140n5XhR;qbY8ZAL`glw|pLN09Z0=ddjo1Qy zsQvl-b!x`ykHu_TimxqQc=E=Psauwm?mIKN@7|T7DE9OzpUO)O9=$v9Ve;0kGry&- zIi$^S)m}=+hClYbR?@z;i>k%GRo*G6b$b8*UG0NhzLP@l{x7&P`Ne%cy*Z17e@$;` s-ZF6wmdKI;Vst0A{=2<^TWy literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/meta.json index 409b512477..681df63262 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/changelingsting.rsi/meta.json @@ -1 +1,35 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon", "delays": [[10.0, 10.0, 10.0, 10.0, 10.0]]}]} \ No newline at end of file +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", + "states": [ + { + "name": "icon", + "delays": [ + [ + 10.0, + 10.0, + 10.0, + 10.0, + 10.0 + ] + ] + }, + { + "name": "icon_open", + "delays": [ + [ + 10.0, + 10.0, + 10.0, + 10.0, + 10.0 + ] + ] + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..0d837ff01229719ab30f730bfb6df2b461227762 GIT binary patch literal 504 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz_7YEDSN5lzth^SIr}vxg0t$(j zxJHx&=ckpFCl;kLxcj&OjZr8|EmAPnGbwCc@(`$mqolyk9VlZAWHWd*XvzaAmUKs7 zM+SzC{oH>NS%G}EByV>YhW{YAVDIwD3=E9Ho-U3d6?2k*{Qqx%*x?c5)|xAfi}@r< z4_qj92uV9$pJJ1EF3Vt9H?xCS-u?Pd|2K!rACO4fIcppDTUmzBx+fSFxDzE**ot^8 z`x25A1Y3UYYRtnu(PQ(1Y1X$j&NGw~ rBvK4_PMiFcA?tAgTe~DWM4fs-VRC literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/meta.json index 6b3193ec36..1bebea0aa9 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/cola.rsi/meta.json @@ -10,6 +10,9 @@ { "name": "icon" }, + { + "name": "icon_open" + }, { "name": "inhand-right", "directions": 4, diff --git a/Resources/Textures/Objects/Consumable/Drinks/dr_gibb.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/dr_gibb.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..4823e3c0510fae97c2007d01f0e6c3d3dcdfdcb8 GIT binary patch literal 535 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz_7YEDSN5lD(p>t|;;##T0ENU$ zTq8?C^+jYt0qL#e5Q_ z3|D17yt&%`zogV5B<*;8icR9VEQ4j;%no9C_v=5|pSZ5TvpL51cI!93hM!_j7}yqs z39v=-2r*l>$+#OBPT)B7C+48Zg`gcXc5RY5yvldCrzsbcM`7;dzKit&ZLIb@%}y*T za*G!@6>&^>)A0ZDvcK(?ERyTP0u)X&>MUuy@%i+8$xAvt68B>E^NH{N_eHbvAU})B zaz@YCxVG^AI)jdktR};y4Jqsm2fEqsON7~$rrcO9;j~fNql`g=>&u%KiI&_J$$N5@ z++`=)-~T^R#&9x|L4n>~Xsv(e_fg!3Y V^~J94R2NV@dAjNS%G}EByV>YhW{YAVDIwD3=E73o-U3d6?2k*{Qqx%*x?c5)|xAfi}@sO z@pYVf^Mn7e@Ut~+$-68WQeJ-htN!1<`YU7J&RN^IYh@Td8=hc{2@*@-dDJZ9+^0N4 z;sirt-8zk$(p1Z~(Ai~^lSN)CGJIM(!BOqTaRVMM-U${OCLX5!tupS#pS+D;>V*Iky(PP(uA4U_|ocU=b!uV)l<#+vVAd7rc9)v=IpZK zNs5n_8(Wy1U`?@Zh-y$`uXvIpBf-Ao_UxpNMlbhG43edewkz(`e|q$`{{EYz32!9q zd1Lq+p1imu*I>yM#yBzC@+RK`HM!CQE12D685s62n#gVaR-+sgE1s@?F6*2UngCAy B&xZg2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/meta.json index 6b3193ec36..1bebea0aa9 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/energy_drink.rsi/meta.json @@ -10,6 +10,9 @@ { "name": "icon" }, + { + "name": "icon_open" + }, { "name": "inhand-right", "directions": 4, diff --git a/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..65ba7adef8321a20a39541214b5ef02d85b942ba GIT binary patch literal 549 zcmV+=0^0qFP)4j6R+*$#-x?D&t2C(Kz5#&mH2$inUWPyT=Q>H`?VELYQZ zp}hlOz6Ch|WFZWL#6XTA#}P~nB!VzMS1_Gbm<|_HSC(T~wP`o0MnM26t~Ii+_z%Lc z;D=#Qh=9c9)zU}~0Txmn%%|eY;1k+`AjKP+Z2}pJT z2+VCTV3<;_!!Wx}pJ7s|4nw59CVd^yx%fWAv7_(7>|;mYF)TlLoqi6ObK@VFKJ)ww zLu%7Sh84%2f%y*v$%_V(6QQA&BE!YE{}}Y&UxbUj)v#sY1=9cM;Q-@*4;jur|HDw5 z?#S@(-+zc$!#W0q_xBlIli>ie(ts1kCx(-!lELf~KpJE@xq##lxN{GZ*LPiyVVJVT z7bZ%!14s&iFK^B?oY}dC;nv-c2(kAN%U@qP%fQZhuYqJ2kXm#CE1Y^*kqj$-K^P=X nxAp)v@u&kv9Wd&E0e1iZQ#%?K{Im9Z00000NkvXXu0mjfQpn@6 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/meta.json index db0ac608ed..1b1b3aa259 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/ice_tea_can.rsi/meta.json @@ -1 +1,17 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]} \ No newline at end of file +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", + "states": [ + { + "name": "icon" + }, + { + "name": "icon_open" + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Objects/Consumable/Drinks/lemon-lime.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/lemon-lime.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..030172d4a72daa4e9c544ecb3abad05c945dada5 GIT binary patch literal 477 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz_7YEDSN5lzth`q07B9Re1BJv( zTq8Hm<+6o)nG^Q0S~8?4@-!cD=u- zNZkLeeunde!T{S!J_Spzk|{P4a}Hk(+%QFsxp}r_rJ=(nW(NnqzSf0j{%|@^yOqo) zywLy2O&(UACs}*`L{3Qjt(&Lu-tzFe$xmiFhjBC@*cAmOQtqQvB}w%k$elxi(0|TR(r;B4q#hm0H|Nq+`c6h|NwdM-rVm^t| z0~bmiLeh@cr`RN(%Q9Hj&FmnScfbDA|IOj@2PD#V&f3QPR+izj?g>T(?nDU{wjv(O zzJw$N!Iqypn_jLtRI+2nu1zwBSNZPtH05IQD9oJ^bE{sUjn$r~*@;CZ@1VF#5yyrJ zuM)U#TeLAvHsUEPEH!R(SKmHShC#*MF=Vx&b8;bj^F~*Z8ElCYo<3okB+I}wr|b;R zrBzHR(Oo2>vsYV z(-b%6n~Du`ta88JeJNznVLar-AjWE~_io8vX1x#hvTtmukUD(%w)}&n%iGp4UtZqW zdcpdpKd;K}hAWGNBOYEk+?5jXk^7KB;jXRhD>~g}4PG?_vNJG<1^#}k&i$_$6xN=u KelF{r5}E)MC9doM literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/meta.json index 6b3193ec36..1bebea0aa9 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/purple_can.rsi/meta.json @@ -10,6 +10,9 @@ { "name": "icon" }, + { + "name": "icon_open" + }, { "name": "inhand-right", "directions": 4, diff --git a/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..f156eab75447231a39e16f03e39deb393ce4dd0e GIT binary patch literal 480 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz_7YEDSN5lztbB}I&WGLGfkNUX zt`Q}{`DrEPiAAXl?mjL+V-(6#ixiCYObT0i(0|TSAr;B4q#hm0H|Nq+`c6h|NwdM-rVm^t| z0~bmiLeh@cr`RN(%Q9Hj&FmnScfbDA|IOj@2PD#V&f3QPR+izj?g>U7J)Qy{A!f@q z8FvH22^@$1#2oz6(s8xGur$@OEp&F-<7Jzf=Y{2^WmNp`S@`guG28sBK|H)_L0?K4I8636 zAE|!q{OR$0CH5=ao=zE+p1-UcK7NaAV@pi9pzUR7U}R`yGN;mQANL7O_6HUABL3+L zyJZwS4L7V=&u*P$KZ$vQ4*SW=R~S$9HB4{NdlKz8jd?|{yR5;hhCp@(hIj8@8qA*@ Q)dvc2Pgg&ebxsLQ00=g+{Qv*} literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/meta.json index 6b3193ec36..1bebea0aa9 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/space-up.rsi/meta.json @@ -10,6 +10,9 @@ { "name": "icon" }, + { + "name": "icon_open" + }, { "name": "inhand-right", "directions": 4, diff --git a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..6a35004e25b828cadd18d55cc0797e43bdb6a7f1 GIT binary patch literal 504 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz_7YEDSN5lztb7a#jmi53fI{LW zt`Q}{`DrEPiAAXl?mjL+V-(6#ixiCYObT0i(0|R5Qr;B4q#hm0H|Nq+`c6h|NwdM-rVm^sd zhMRmHr{4VN?@>P!$$PA%km1Ckx4-@W)qi`%EOA&T{BqgCz03*wSS=Y+6nUDDIP@tV z7xdv#X)>@6H<%kbgHJp-d|GnE)=cx2ZjKC^>qI@S{Nz8h;X!+1K!?Y)sDIDDhAUdK zM0k{LsBV;K4%^AwX0d;!6!YP=*HzdVP6l33lRW%DM7^WQaoX|M6_au-Bl#E_E5lAp zc5P8QnB)Iaq3y5WWJ$5On||`_9||*?UapomZ_LzxnZR~jbZ1JW-!x{szdOzqJY_!e z>13L>WRbt?2T+9ue<%3UwQg*{e`;Q|36)BJ|Gdo)$}AYPWq4x<6(vFlUwKL kum?!@TP1)4u7I6^Vb2He{GhLGg`kM=boFyt=akR{0Nk{`BLDyZ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/meta.json index 6b3193ec36..1bebea0aa9 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/space_mountain_wind.rsi/meta.json @@ -10,6 +10,9 @@ { "name": "icon" }, + { + "name": "icon_open" + }, { "name": "inhand-right", "directions": 4, diff --git a/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..b0fd12a7e705357e56df72e07b539696d8a3041b GIT binary patch literal 520 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz_7YEDSN5lztbC069LFag01Anh zxJHx&=ckpFCl;kLxcj&OjZr8|EmAPnGbwCc@(`$mqolyk9VlZAWHWd*XvzaAmUKs7 zM+SzC{oH>NS%G}EByV>YhW{YAVDIwD3=E9Po-U3d6?2k*{Qqx%*x?c5)|xAfi}@r< z4_qj92uV9$pJJ1EF3Vt9H?xCS-u?Pd|2K!rACO4fIcppDTUmzBx+fSFxDzE**ot^8 z`x25A1Y3UYY&C_ZHA`;uu&OL)6!`J}?lFba zI;?5-HA@eDc(_aCaQpS76w8Ju0u`#yk11qG9{V8KA)i-}mJq>W`iS?WTO;F1MTKt} z;xqnzQ|oPX6g`pgkM9|GhTY$h80f literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/meta.json index 6b3193ec36..1bebea0aa9 100644 --- a/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Drinks/starkist.rsi/meta.json @@ -10,6 +10,9 @@ { "name": "icon" }, + { + "name": "icon_open" + }, { "name": "inhand-right", "directions": 4, diff --git a/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko.rsi/icon_open.png b/Resources/Textures/Objects/Consumable/Drinks/thirteen_loko.rsi/icon_open.png new file mode 100644 index 0000000000000000000000000000000000000000..b966efa0b245d4954ac8413e2df0d9abea9b989e GIT binary patch literal 493 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz_7YEDSN5lztb9!Jti~VK1BJv( zTq8?C^+jYt0qL#e5Q_ z3^(~YPQCfj-=lselJ{6iA;XD7Z-4v$tN-?jS>mux_~o*NdzlmVv05^uDDpHPap+S# zF6hIf(qv#CZZJ1=2A_Cv__XARt(oR4-5eP-*Uf#D^+~=Z@gV=<1p#i$g}ZIX?na@*cb@xu@-a-3J&^VAgut)I>RmUMbH{sblVJ1kV^#>*^UqL1 zd~L;%4WCcBx9#d)f3l3>q#^^;<*d*HU%qQkn6TlG^EAT*hcJ#D+b?~JtAFxYusBrw zKb>DvcHm(7hkzH|6OwQIZ#tLBaI;7t7||j?PJd{T;A?|_<%$RSJRWsIO#(&jE5DvPi~!~!yX{rZ