/usr/share/freedroidrpg/dialogs/Stone.lua is in freedroidrpg-data 0.16.1-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 | ---------------------------------------------------------------------
-- This file is part of Freedroid
--
-- Freedroid is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 2 of the License, or
-- (at your option) any later version.
--
-- Freedroid is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Freedroid; see the file COPYING. If not, write to the
-- Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-- MA 02111-1307 USA
----------------------------------------------------------------------
--[[WIKI
PERSONALITY = { "Friendly", "Desperate" },
MARKERS = {
QUESTID1 = "Saving the shop",
ITEMID1 = "Two Barrel shotgun",
ITEMID2 = "Shotgun shells"
},
PURPOSE = "$$NAME$$ is the first seller of equipment available in the town. She sells armament for the first part of game.",
BACKSTORY = "$$NAME$$ has continued to take care of her shop after The Great Assault. However, the Red Guard taxes represent
such a significant financial burden that she is having problems with its finances. $$NAME$$\'s grandfather knows Tux as
a ancient hero. She managed to hide her grandfather\'s $$ITEMID1$$ from the Red Guard. She may give it and some $$ITEMID2$$
to Tux as a reward for completing the $$QUESTID1$$ quest."
WIKI]]--
local Npc = FDrpg.get_npc()
local Tux = FDrpg.get_tux()
return {
FirstTime = function()
show("node0")
end,
EveryTime = function()
if (Tux:has_quest("Saving the shop")) then
show_if((Tux:get_gold() > 1400), "node23")
if (Tux:done_quest("Saving the shop")) then
hide("node23") show("node10")
end
end
if (Stone_talk_again_later) then
show("node4")
end
show("node99")
end,
{
id = "node0",
text = _"Hi! I'm new here.",
code = function()
Npc:says(_"Welcome to our town! I'm Ms. Stone. I run this shop.")
Npc:set_name("Stone - Shop owner")
hide("node0") show("node1", "node3", "node10")
end,
},
{
id = "node1",
text = _"I would like to trade with you.",
code = function()
Npc:says(_"Good! Here is the selection of items I have for sale.")
show_if((not Stone_asked_for_guns), "node2")
trade_with("Stone")
end,
},
{
id = "node2",
text = _"Swords, clubs and maces? What is this? I want guns!",
code = function()
if (tux_has_joined_guard) then
Npc:says(_"I think the Red Guard has their own store somewhere.")
Npc:says(_"At least, they somehow get supplement I don't sell.")
Npc:says(_"However, I'm quite sure, they don't offer the same range of products that I do.")
else
Npc:says(_"Sorry, this is all we have for now. The Red Guard took away all of our poppers.", "NO_WAIT")
Npc:says(_"For our own good. Of course.")
end
Stone_asked_for_guns = true
hide("node2")
end,
},
{
id = "node3",
text = _"What can you tell me about the guards here?",
code = function()
Npc:says(_"Ah, the Red Guard.", "NO_WAIT")
if (guard_follow_tux) then -- tux followed by guard
Npc:says(_"Well, they keep the town safe.")
Npc:says(_"Without them, everything would drown in chaos, but...")
show("node4")
elseif (tux_has_joined_guard) then -- tux joined guard/not followed by guard
Npc:says(_"Well, you ARE a red guard.")
Npc:says(_"What should I tell you about them that you don't know yet?")
Tux:says(_"Uhm, right.")
else
Npc:says(_"Stranger, best if you don't ask such questions.", "NO_WAIT")
Npc:says(_"They keep us alive and safe from the bots, but...")
show("node4")
end
hide("node3")
end,
},
{
id = "node4",
text = _"But...?",
code = function()
if (guard_follow_tux) then
Npc:says(_"But nothing.")
Npc:says(_"I'm busy right now.")
Npc:says(_"We should talk again later...")
Stone_talk_again_later = true -- EveryTime Code: if var then show("node4")
elseif (tux_has_joined_guard) then -- tux joined guard, not followed
Npc:says(_"But nothing!")
Npc:says(_"I don't know what you are talking about.")
Stone_talk_again_later = false -- Stone rejects to tell more because Tux is RG now
else
Npc:says(_"The Guards run the town with very strict laws and demand total obedience.", "NO_WAIT")
Npc:says(_"We all need to obey their rules. We need to work hard or they hurt us.")
Npc:says(_"I guess I should not complain. The bots are far worse than the guards can be, but...")
Npc:says(_"Sucked dry by a bloodthirsty regime over many years or just sliced into bits by our former servants...", "NO_WAIT")
Npc:says(_"... What's the difference?")
Stone_talk_again_later = false
show("node8")
end
hide("node4")
end,
},
{
id = "node8",
text = _"If things are so bad right now, why don't you leave?",
echo_text = false,
code = function()
Tux:says(_"If things are so bad right now, why --")
Npc:says(_"I don't want to hear this jabberwocky.", "NO_WAIT")
Npc:says(_"A hint, Linarian: We don't have much, but we're alive and we'd rather stay that way.", "NO_WAIT")
if (tux_has_joined_guard) then
Npc:says(_"You are a Red Guardian now, feel free to make attempts on making our situation better here in this town.")
else
Npc:says(_"If you want to start a revolution, you're on your own.")
end
hide("node8")
end,
},
{
id = "node10",
text = _"How is your business going?",
code = function()
if (Tux:done_quest("Saving the shop")) then
Npc:says(_"Thanks to you I have a chance now.", "NO_WAIT")
Npc:says(_"Ha! It's time to show the world that Lily Stone is not going down without putting up a REAL good fight.")
Npc:set_name("Lily Stone - Shop owner")
else
Npc:says(_"I'll be finished in about a week.", "NO_WAIT")
Npc:says(_"The Stone family always bought cheap and sold at a low profit. The times have changed, but not my prices.")
Npc:says(_"The new taxes, the worldwide economic collapse and other factors are slowly murdering the family store.")
show("node13", "node16")
end
hide("node10")
end,
},
{
id = "node13",
text = _"Can I help you somehow, Ms. Stone?",
code = function()
Npc:says(_"No, there's nothing that can be done anymore. I don't have enough money to lift the shop from the downward spiral.")
Npc:says(_"I'd need thousands to just survive the month.", "NO_WAIT")
Npc:says(_"The shop is dying, and there's nothing either of us can do about it.")
hide("node13", "node16") show("node15")
end,
},
{
id = "node15",
text = _"Maybe there is still hope, Ms. Stone. How much exactly do you need?",
code = function()
Npc:says(_"I couldn't get myself to look at my finance logs for a while now. I guess about two thousand circuits.")
Tux:add_quest("Saving the shop", _"Ms. Stone can't afford to pay her taxes, and it looks like the family business will be going under soon. She needs 2000 in cash to stay afloat. I could try to help her out.")
show_if((Tux:get_gold() > 2000), "node23")
hide("node15")
end,
},
{
id = "node16",
text = _"A pity that nothing can be done about your store.",
code = function()
Npc:says(_"Yes. A tradition of six generations will die with this shop...", "NO_WAIT")
Npc:says(_"I guess it just had to happen one day...")
hide("node13", "node16")
end,
},
{
id = "node23",
text = _"I have the money you need Ms. Stone. You can have it.",
code = function()
Npc:says(_"Is... Is this a joke? So much money? And you just give it to me?", "NO_WAIT")
Npc:says(_"Thank you! Thank you! Thank you! Savior!")
if (tux_has_joined_guard) then -- joined guard
Npc:says(_"Are you sure you really have the sum of 2000 circuits?")
if (Tux:del_gold(2000)) then
Tux:says(_"Yes, I have it.")
Npc:says(_"Oh thank you!")
Tux:end_quest("Saving the shop", _"Ms. Stone seemed relieved as I gave her the money. I hope she won't need to file bankruptcy.")
else -- joined guard + not enough money
Npc:says(_"Hold on a minute, you are still a bit short on money.", "NO_WAIT")
Npc:says(_"Don't try to trick me.")
end
else -- not joined guard, Stone will be more kind
Npc:says(_"But this isn't fair to you. The Stones are a family of fair merchants and I intend to uphold that tradition.")
Npc:says(_"I need 1,547 circuits to get through the month. I will accept only that and not a transistor more.")
if (Tux:del_gold(1547)) then
Npc:says(_"Now it's fair. Thank you.", "NO_WAIT")
Npc:says(_"You've given me a bit of hope.. ", "NO_WAIT")
Npc:says(_"Wait a second... I think I recognize you...")
--; TRANSLATORS: %s = Tux:get_player_name()
Npc:says(_"You are %s, aren't you...?", Tux:get_player_name())
Npc:says(_"The hero...")
show("node31", "node32", "node33")
push_topic("Stone's Hero")
else -- not joined guard + not enough money
Npc:says(_"Hold on a minute, you are still a bit short on money.", "NO_WAIT")
Npc:says(_"Please return with the full amount if you want to help.", "NO_WAIT")
Npc:says(_"Otherwise, you're throwing good money after bad, and I couldn't let you do that.")
end
end
hide("node23")
end,
},
{
id = "node31",
text = _"Yes, it's me.",
topic = "Stone's Hero",
code = function()
Npc:says(_"I thought so. My grandfather used to tell me stories about you. He said you would come here in a time of despair.", "NO_WAIT")
Npc:says(_"And here you are.")
Npc:says(_"I hope your arrival changes the tide of this war...", "NO_WAIT")
Npc:says(_"I have something here for you. I managed to hide this Shotgun from the Red Guard.")
Npc:says(_"It used to belong to my grandfather, so it's very dear to me, but I'm sure he would have liked you to have it on your journey to save us all.")
--; TRANSLATORS: %s = Tux:get_player_name()
Npc:says(_"%s, if you ever find out who started the Great Assault... GIVE THEM A SWIFT KICK FROM LILY STONE!!!", Tux:get_player_name())
Npc:set_name("Lily Stone - Shop owner")
Tux:add_item("Two Barrel shotgun", 1)
Tux:add_item("Shotgun shells", 20)
Tux:end_quest("Saving the shop", _"Ms. Stone was really grateful for my help. She took only what she needed from me, and still rewarded me with a shotgun she had been hiding from the Red Guard.")
hide("node31", "node32", "node33")
pop_topic() -- "Stone's Hero"
end,
},
{
id = "node32",
text = _"It's not important who I am.",
topic = "Stone's Hero",
code = function()
Npc:says(_"If you want to remain a stranger, I will respect your wishes.", "NO_WAIT")
Npc:says(_"So be it.")
Tux:end_quest("Saving the shop", _"Ms. Stone was really grateful for my help. She took only what she needed from me.")
hide("node31", "node32", "node33")
pop_topic() -- "Stone's Hero"
end,
},
{
id = "node33",
text = _"Ha ha ha, you fell for it! You get nothing from me! Hahahahah!",
topic = "Stone's Hero",
code = function()
Npc:says(_"You... monster...", "NO_WAIT")
Npc:says(_"No one makes fun of Lily Stone's family store!", "NO_WAIT")
Npc:says(_"Say your prayers, you oversized duck!!!")
Tux:add_gold(1547)
npc_faction("crazy", _"Lily Stone - Bird Hunter")
Tux:end_quest("Saving the shop", _"I tricked that Ms. Stone into believing I was going to help her out. It was funny to see her get angry.")
hide("node31", "node32", "node33")
pop_topic() -- "Stone's Hero"
end_dialog()
end,
},
{
id = "node99",
text = _"See you later.",
code = function()
Npc:says_random(_"Have a nice day!",
_"Take care that you don't void any warranties.",
_"Please come back if you have any questions regarding my goods.",
_"I hope to see you again, soon!")
end_dialog()
end,
},
}
|