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 5c417b0b48..11a8437b8a 100644 --- a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl +++ b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl @@ -145,3 +145,6 @@ ghost-role-information-centcom-official-description = Inspect the station, jot d ghost-role-information-behonker-name = Behonker ghost-role-information-behonker-description = You are an antagonist, bring death and honks to those who do not follow the honkmother. + +ghost-role-information-taxibot-name = TaxiBot +ghost-role-information-taxibot-description = Drive the station crew to their destination. diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml index 0d4f881f8d..3318d0c3b5 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml @@ -103,6 +103,62 @@ guides: - Robotics +- type: entity + parent: MobSiliconBase + id: MobTaxiBot + name: taxibot + description: Give a ride? + components: + - type: Sprite + drawdepth: Mobs + sprite: Mobs/Silicon/Bots/taxibot.rsi + layers: + - state: taxibot + map: ["enum.VehicleVisualLayers.AutoAnimate"] + noRot: true + - type: Physics + bodyType: Dynamic + - type: IntrinsicRadioReceiver + - type: ActiveRadio + channels: + - Common + - type: GhostRole + makeSentient: true + name: ghost-role-information-taxibot-name + description: ghost-role-information-taxibot-description + - type: GhostTakeoverAvailable + - type: MovementSpeedModifier + weightlessModifier: 0 + acceleration: 2 + friction: 2 + frictionNoInput: 6 + baseWalkSpeed: 3 + baseSprintSpeed: 10 + - type: Strap + buckleOffset: "0, 0" + maxBuckleDistance: 1 + - type: AmbientSound + sound: "/Audio/Effects/Vehicle/vehicleengineidle.ogg" + range: 10 + volume: -5 + 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: entity parent: MobSiliconBase id: MobHonkBot diff --git a/Resources/Prototypes/Recipes/Crafting/Graphs/bots/taxibot.yml b/Resources/Prototypes/Recipes/Crafting/Graphs/bots/taxibot.yml new file mode 100644 index 0000000000..808de7efc8 --- /dev/null +++ b/Resources/Prototypes/Recipes/Crafting/Graphs/bots/taxibot.yml @@ -0,0 +1,29 @@ +- type: constructionGraph + id: TaxiBot + 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/Borg/head.rsi + state: light_borg_head + name: borg head + doAfter: 1 + - tag: BorgArm + icon: + sprite: Mobs/Silicon/drone.rsi + state: l_hand + name: borg arm + doAfter: 2 + - material: Steel + amount: 5 + - node: bot + entity: MobTaxiBot \ No newline at end of file diff --git a/Resources/Prototypes/Recipes/Crafting/bots.yml b/Resources/Prototypes/Recipes/Crafting/bots.yml index 9a70a19c86..8ba3242a5e 100644 --- a/Resources/Prototypes/Recipes/Crafting/bots.yml +++ b/Resources/Prototypes/Recipes/Crafting/bots.yml @@ -24,6 +24,19 @@ sprite: Mobs/Silicon/Bots/honkbot.rsi state: honkbot +- type: construction + name: taxibot + id: taxibot + graph: TaxiBot + startNode: start + targetNode: bot + category: construction-category-utilities + objectType: Item + description: This bot takes people to their destination. + icon: + sprite: Mobs/Silicon/Bots/taxibot.rsi + state: taxibot + - type: construction name: jonkbot id: jonkbot diff --git a/Resources/Textures/Mobs/Silicon/Bots/taxibot.rsi/meta.json b/Resources/Textures/Mobs/Silicon/Bots/taxibot.rsi/meta.json new file mode 100644 index 0000000000..554db619f3 --- /dev/null +++ b/Resources/Textures/Mobs/Silicon/Bots/taxibot.rsi/meta.json @@ -0,0 +1,41 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "taxibot drawn by FillerVK", + "states": [ + { + "name": "taxibot", + "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/taxibot.rsi/taxibot.png b/Resources/Textures/Mobs/Silicon/Bots/taxibot.rsi/taxibot.png new file mode 100644 index 0000000000..1f1a8ff789 Binary files /dev/null and b/Resources/Textures/Mobs/Silicon/Bots/taxibot.rsi/taxibot.png differ