1function onSay(player, words, param)
2 local split = param:splitTrimmed(" ")
3 local MLevel = 80
4 local MAESTRIA_NAME = {
5 [01] = {N = "REGEN", V = 02};
6 [02] = {N = "TANKER", V = 03};
7 [03] = {N = "SHOOTER", V = 04};
8 [04] = {N = "VITAL", V = 05};
9 [05] = {N = "LUCKY", V = 06};
10 }
11 local MAESTRIA_REC = {
12 [-1] = {LVL = 150, PRICE = 100000};
13 [00] = {LVL = 150, PRICE = 100000};
14 [01] = {LVL = 200, PRICE = 250000};
15 [02] = {LVL = 250, PRICE = 350000};
16 [03] = {LVL = 300, PRICE = 500000};
17 }
18
19 if _DEBUG_MODE then
20 local _TYPE = {
21 ["00"] = 'Comprando Maestria pela primeira vez',
22 }
23
24 if _TYPE[split[01]] then
25 print("[TALK - ESPECIALISTA] " ..player:getName().. " - " .._TYPE[split[01]])
26 else
27 print("[TALK - ESPECIALISTA] " ..player:getName().. " - " ..split[01].. " | Maestria: " ..MAESTRIA_NAME[tonumber(split[02])].N)
28 end
29 end
30 if split[01] == "00" then
31 local MAESTRIA = tonumber(split[02])
32 if player:getStorageValue(_SYSTEM.MAESTRIA[01]) < 01 then
33 local GOLD_COIN = PlayerGoldCoins(player, 00)
34 if _CHEATS.MAESTRIA_LEVEL_UNLOCK or player:getLevel() >= MLevel then
35 if _CHEATS.MAESTRIA_COIN_FREE or GOLD_COIN >= 50000 then
36 player:setStorageValue(_SYSTEM.MAESTRIA[01], MAESTRIA)
37 player:setStorageValue(_SYSTEM.MAESTRIA[02], 00)
38
39 if _CHEATS.MAESTRIA_COIN_FREE == false then
40 PlayerGoldCoins(player, 01, 50000)
41 --player:setStorageValue(_SYSTEM.GOLD_COIN, (GOLD_COIN - 20000))
42 end
43
44 player:sendCancelMessage("@NewMaestria")
45
46 player:setVocation(MAESTRIA_NAME[MAESTRIA].V)
47 local IDD_1 = player:getStorageValue(_SYSTEM.MAESTRIA[01])
48 local IDD_2 = player:getStorageValue(_SYSTEM.ESPECIALISTA[01])
49 local IDD_3 = player:getStorageValue(_SYSTEM.MAESTRIA[02])
50 local IDD_4 = player:getStorageValue(_SYSTEM.ESPECIALISTA[02])
51 player:sendCancelMessage("@MaestriaEsp " ..IDD_1.. " " ..IDD_2.. " " ..IDD_3.. " " ..IDD_4)
52 player:sendCancelMessage("@StarCliente")
53
54 if player:getStorageValue(_QUESTLOG[156].UID_01) == 01 then
55 addEvent(function()
56 player:setStorageValue(_QUESTLOG[156].UID_01, 100)
57
58 player:addExperience(50000, true, true)
59 player:getPosition():sendMagicEffect(14)
60 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
61 doBackpack(player, 12)
62 end, 3000)
63 end
64 else
65
66 end
67 else
68
69 end
70 end
71 else
72 local MAESTRIA = tonumber(split[02])
73 if player:getStorageValue(_SYSTEM.MAESTRIA[01]) > 00 then
74 if player:getStorageValue(_SYSTEM.MAESTRIA[02]) < 05 then
75 local MAESTRIA_LEVEL = player:getStorageValue(_SYSTEM.MAESTRIA[02])
76 local GOLD_COIN = PlayerGoldCoins(player, 00)
77 if _CHEATS.MAESTRIA_LEVEL_UNLOCK or player:getLevel() >= MAESTRIA_REC[MAESTRIA_LEVEL].LVL then
78 if _CHEATS.MAESTRIA_COIN_FREE or GOLD_COIN >= MAESTRIA_REC[MAESTRIA_LEVEL].PRICE then
79 if _CHEATS.MAESTRIA_COIN_FREE == false then
80 PlayerGoldCoins(player, 01, MAESTRIA_REC[MAESTRIA_LEVEL].PRICE)
81 --player:setStorageValue(_SYSTEM.GOLD_COIN, (GOLD_COIN - MAESTRIA_REC[MAESTRIA_LEVEL].PRICE))
82 end
83 if MAESTRIA_LEVEL < 01 then
84 player:setStorageValue(_SYSTEM.MAESTRIA[02], 01)
85 else
86 player:setStorageValue(_SYSTEM.MAESTRIA[02], (MAESTRIA_LEVEL + 1))
87 end
88
89 player:sendCancelMessage("@NewMaestria")
90
91 local IDD_1 = player:getStorageValue(_SYSTEM.MAESTRIA[01])
92 local IDD_2 = player:getStorageValue(_SYSTEM.ESPECIALISTA[01])
93 local IDD_3 = player:getStorageValue(_SYSTEM.MAESTRIA[02])
94 local IDD_4 = player:getStorageValue(_SYSTEM.ESPECIALISTA[02])
95 player:sendCancelMessage("@MaestriaEsp " ..IDD_1.. " " ..IDD_2.. " " ..IDD_3.. " " ..IDD_4)
96
97 -- RRESET MAESTRIA SPELLS
98 player:setStorageValue(_SYSTEM.MAESTRIA[03], nil)
99 player:setStorageValue(_SYSTEM.MAESTRIA[04], nil)
100 player:sendCancelMessage("@StarCliente")
101 else
102
103 end
104 else
105
106 end
107 else
108
109 end
110 end
111 end
112
113 return false
114end
115