ralke
(҂ ͠❛ ෴ ͡❛)ᕤ
- Joined
- Dec 17, 2011
- Messages
- 1,696
- Solutions
- 30
- Reaction score
- 953
- Location
- Santiago - Chile
- GitHub
- ralke23
- Twitch
- ralke23
Hi there, I use TFS 1.5 nekiro downgrade 8.6 and was looking at this post
I like the way it divides different stages of completition at the table @Sarah Wesker shows.
My question is, what is storage = storage + name:byte(i), because i'm looking into a way of using the storage assigned by completition the monster count, this way I can use this storage as requeriement for other systems (for example: I reach the 1000 dragon milestone and this will give me an storage, then I reach the 2000 dragon milestone which gives me an item reward).
So in resume, which storage would be for example, completing 1000 dragon milestone?
And also, there's a chance to add specific reward for each milestone?
So it ends up like this example:
Thanks in advance!
It may not be exactly what you are looking for but I will leave you this example that I made for you especially:
data/scripts/example.lua
-- TFS 1.5+
LUA:
local STORAGE_BASE = 75500
local records = {
["Dragon"] = {
records = {
{ count = 10, message = "You killed 10 dragons." },
{ count = 50, message = "You killed 50 dragons." },
{ count = 100, message = "You killed 100 dragons." },
{ count = 250, message = "You killed 250 dragons." },
{ count = 500, message = "You killed 500 dragons." },
{ count =...
It may not be exactly what you are looking for but I will leave you this example that I made for you especially:
data/scripts/example.lua
-- TFS 1.5+
Just make sure you use the correct spelling of monster names with their first letter capitalized.LUA:local STORAGE_BASE = 75500 local records = { ["Dragon"] = { records = { { count = 10, message = "You killed 10 dragons." }, { count = 50, message = "You killed 50 dragons." }, { count = 100, message = "You killed 100 dragons." }, { count = 250, message = "You killed 250 dragons." }, { count = 500, message = "You killed 500 dragons." }, { count = 1000, message = "You killed 1000 dragons." }, { count = 2000, message = "You killed 2000 dragons." }, { count = 5000, message = "You killed 5000 dragons." }, { count = 10000, message = "You killed 10000 dragons." }, { count = 20000, message = "You killed 20000 dragons." }, { count = 50000, message = "You killed 50000 dragons." }, { count = 100000, message = "You killed 100000 dragons." }, { count = 200000, message = "You killed 200000 dragons." }, { count = 500000, message = "You killed 500000 dragons." }, { count = 1000000, message = "You killed 1000000 dragons." }, { count = 2000000, message = "You killed 2000000 dragons." }, { count = 5000000, message = "You killed 5000000 dragons." }, { count = 10000000, message = "You killed 10000000 dragons." }, { count = 20000000, message = "You killed 20000000 dragons." }, { count = 50000000, message = "You killed 50000000 dragons." } } }, ["Demon"] = { records = { { count = 10, message = "You killed 10 demons." }, { count = 50, message = "You killed 50 demons." }, { count = 100, message = "You killed 100 demons." }, { count = 250, message = "You killed 250 demons." }, { count = 500, message = "You killed 500 demons." }, { count = 1000, message = "You killed 1000 demons." }, { count = 2000, message = "You killed 2000 demons." }, { count = 5000, message = "You killed 5000 demons." }, { count = 10000, message = "You killed 10000 demons." }, { count = 20000, message = "You killed 20000 demons." }, { count = 50000, message = "You killed 50000 demons." }, { count = 100000, message = "You killed 100000 demons." }, { count = 200000, message = "You killed 200000 demons." }, { count = 500000, message = "You killed 500000 demons." }, { count = 1000000, message = "You killed 1000000 demons." }, { count = 2000000, message = "You killed 2000000 demons." }, { count = 5000000, message = "You killed 5000000 demons." }, { count = 10000000, message = "You killed 10000000 demons." }, { count = 20000000, message = "You killed 20000000 demons." }, { count = 50000000, message = "You killed 50000000 demons." } } } } for name, record in pairs(records) do local storage = 0 for i = 1, #name do storage = storage + name:byte(i) end records[name].storage = STORAGE_BASE + storage end local creatureEvent = CreatureEvent("KillMonsterCounter") function creatureEvent.onKill(player, monster) local record = records[monster:getName()] if not record then return true end local storage = record.storage local count = math.max(0, tonumber(player.storage[storage]) or 0) for _, record in pairs(record.records) do if count < record.count then player.storage[storage] = count + 1 if count + 1 == record.count then player:sendTextMessage(MESSAGE_EVENT_ADVANCE, record.message) end return true end end return true end creatureEvent:register() local creatureEvent = CreatureEvent("LoginMonsterCounter") function creatureEvent.onLogin(player) player:registerEvent("KillMonsterCounter") return true end creatureEvent:register()
example:Dragon
insteaddragon
LUA:... ["Dragon"] = { -- see HERE records = { { count = 10, message = "You killed 10 dragons." }, ...
I like the way it divides different stages of completition at the table @Sarah Wesker shows.
My question is, what is storage = storage + name:byte(i), because i'm looking into a way of using the storage assigned by completition the monster count, this way I can use this storage as requeriement for other systems (for example: I reach the 1000 dragon milestone and this will give me an storage, then I reach the 2000 dragon milestone which gives me an item reward).
So in resume, which storage would be for example, completing 1000 dragon milestone?
And also, there's a chance to add specific reward for each milestone?
So it ends up like this example:
LUA:
count = 1000, message = "You killed 1000 dragons.", storage="xxxxx" ---- Use storage reward in this count
count = 2000, message = "You killed 2000 dragons.", itemid="xxxx" ---- Use itemid reward in this count
count = 3000, message = "You killed 3000 dragons.", money="xxxx" ---- Use money reward in this count
Thanks in advance!