diff --git a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl index b676bcf5cd..81604e8d6b 100644 --- a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl +++ b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl @@ -76,6 +76,9 @@ ghost-role-information-mimebot-description = A Mimebot, act like a mime but dont ghost-role-information-taxibot-name = TaxiBot ghost-role-information-taxibot-description = Drive the station crew to their destination. +ghost-role-information-supplybot-name = SupplyBot +ghost-role-information-supplybot-description = Deliver goods around the station. + ghost-role-information-space-bear-name = Space bear ghost-role-information-space-bear-description = You're a bear! Do bear things. diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml index 59b383de12..f9aa29e87d 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml @@ -168,6 +168,70 @@ - type: TypingIndicator proto: robot +- type: entity + parent: MobSiliconBase + id: MobSupplyBot + name: supplybot + description: Delivers cargo! + components: + - type: NoSlip + - type: Sprite + drawdepth: Mobs + sprite: Mobs/Silicon/Bots/supplybot.rsi + layers: + - state: supplybot + map: ["enum.VehicleVisualLayers.AutoAnimate"] + noRot: true + - type: IntrinsicRadioReceiver + - type: ActiveRadio + channels: + - Common + - type: GhostRole + makeSentient: true + name: ghost-role-information-supplybot-name + description: ghost-role-information-supplybot-description + - type: GhostTakeoverAvailable + - type: MovementSpeedModifier + weightlessModifier: 0 + acceleration: 2 + friction: 2.2 + frictionNoInput: 6.5 + baseWalkSpeed: 3 + baseSprintSpeed: 6 + - type: AmbientSound + sound: "/Audio/Effects/Vehicle/vehicleengineidle.ogg" + range: 10 + volume: -10 + enabled: true + - type: Construction + graph: TaxiBot + node: bot + - type: UnpoweredFlashlight + toggleAction: + name: action-name-toggle-light + description: action-description-toggle-light + icon: { sprite: Objects/Tools/flashlight.rsi, state: flashlight } + iconOn: Objects/Tools/flashlight.rsi/flashlight-on.png + event: !type:ToggleActionEvent + - type: PointLight + enabled: false + radius: 3.5 + softness: 2 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + - type: TypingIndicator + proto: robot + - type: Storage + capacity: 250 + - type: UserInterface + interfaces: + - key: enum.StorageUiKey.Key + type: StorageBoundUserInterface + - type: ContainerContainer + containers: + storagebase: !type:Container + ents: [] + - type: entity parent: MobSiliconBase id: MobHonkBot diff --git a/Resources/Prototypes/Recipes/Crafting/Graphs/bots/supplybot.yml b/Resources/Prototypes/Recipes/Crafting/Graphs/bots/supplybot.yml new file mode 100644 index 0000000000..efabb849bb --- /dev/null +++ b/Resources/Prototypes/Recipes/Crafting/Graphs/bots/supplybot.yml @@ -0,0 +1,23 @@ +- type: constructionGraph + id: SupplyBot + start: start + graph: + - node: start + edges: + - to: bot + steps: + - tag: ProximitySensor + icon: + sprite: Objects/Misc/proximity_sensor.rsi + state: icon + name: proximity sensor + - tag: BorgHead + icon: + sprite: Objects/Specific/Robotics/cyborg_parts.rsi + state: borg_head + name: borg head + doAfter: 1 + - material: Steel + amount: 10 + - node: bot + entity: MobSupplyBot diff --git a/Resources/Prototypes/Recipes/Crafting/bots.yml b/Resources/Prototypes/Recipes/Crafting/bots.yml index 8ba3242a5e..55b907a38e 100644 --- a/Resources/Prototypes/Recipes/Crafting/bots.yml +++ b/Resources/Prototypes/Recipes/Crafting/bots.yml @@ -37,6 +37,19 @@ sprite: Mobs/Silicon/Bots/taxibot.rsi state: taxibot +- type: construction + name: supplybot + id: supplybot + graph: SupplyBot + startNode: start + targetNode: bot + category: construction-category-utilities + objectType: Item + description: This bot can be loaded with cargo to make deliveries. + icon: + sprite: Mobs/Silicon/Bots/supplybot.rsi + state: supplybot + - type: construction name: jonkbot id: jonkbot diff --git a/Resources/Textures/Mobs/Silicon/Bots/supplybot.rsi/meta.json b/Resources/Textures/Mobs/Silicon/Bots/supplybot.rsi/meta.json new file mode 100644 index 0000000000..6bb3e77cfe --- /dev/null +++ b/Resources/Textures/Mobs/Silicon/Bots/supplybot.rsi/meta.json @@ -0,0 +1,41 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "supplybot drawn by netwy", + "states": [ + { + "name": "supplybot", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + } + ] +} diff --git a/Resources/Textures/Mobs/Silicon/Bots/supplybot.rsi/supplybot.png b/Resources/Textures/Mobs/Silicon/Bots/supplybot.rsi/supplybot.png new file mode 100644 index 0000000000..cac976240b Binary files /dev/null and b/Resources/Textures/Mobs/Silicon/Bots/supplybot.rsi/supplybot.png differ