npcchat: type: format format: ": " StableWS: type: world events: on player join: - if { - inject locally HorseRes } on player quits: - if { - ^execute as_server "npc sel " - ^execute as_server "npc despawn" } HorseRez: - if { - ^execute as_server "npc spawn " - ^execute as_server "npc sel " - ^execute as_server "npc move location:" } StableShop: type: assignment debug: false default constants: HorseCost: 500 actions: on assignment: - trigger name:click state:true - trigger name:chat state:true interact scripts: - 10 Stableman Stableman: type: interact steps: 1: click trigger: script: - if { - narrate format:npcchat "You already have a horse, Come buy another if it dies." } else { - narrate format:npcchat "Hello ." - wait 0.5 - narrate format:npcchat "Would you like to buy a horse for $500?" - wait 0.2 - narrate "Say Yes or No." } chat trigger: 1: trigger: /Yes/, I'll take a horse. script: - if < { - narrate format:npcchat "You don't have enough money to buy a horse." } else { - take money qty: - create horse myhorse save:myhorse - flag player haveHorse: - npc select " - npc rename 's horse" - npc owner " - npc vulnerable" - npc assign --set TheHorse" - npc controllable" - inventory set destination: o:saddle slot:1 - wait 0.5 - ^execute as_server "citizens save" } - disengage 2: trigger: /No/, I don't need a horse right now. script: - random { - narrate format:npcchat "Ok, come again soon!" - narrate format:npcchat "No problem, you're welcome back any time!" - narrate format:npcchat "That's fine, now beat it!" } - disengage TheHorse: type: assignment debug: false actions: on assignment: - trait state:true health on death: - flag haveHorse:! - wait 1t - remove