Como sempre aparece alguém pedindo algo semelhante, resolvi fazer um básico aqui.
Primeiramente, adicione uma coluna à tabela players de sua database:
ALTER TABLE `players` ADD `ot_points` INTEGER NOT NULL DEFAULT 0
Em seguida, crie um arquivo na pasta lib :
systempoints.lua (ou qualquer nome de sua preferência)
Talkaction
Em talkactions/scripts crie um arquivo:
pointstalk.lua
Adicione a tag em talkactions.xml: <talkaction words="/addpoints;/delpoints;/onpoints;/transfpoints;/helppoints;/points;/getpoints" event="script" value="pointstalk.lua"/>
-- Como usar:
-- /addpoints Dwarfer,10 -> adiciona 10 pontos ao player Dwarfer
-- /delpoints Dwarfer,10 -> remove 10 pontos do player Dwarfer
-- /getpoints Dwarfer -> mostrará quantos pontos o player tem
-- /points --> mostrará quantos pontos o próprio player possui
-- /transfpoints Dwarfer,10 -> transfere 10 pontos para o player Dwarfer
-- /onpoints 10 -> adiciona 10 pontos a todos os players online
-- /helppoints -> mostra como devem ser usados os comandos permitidos ao player
Actions
Baú que dá itens por pontos
Em actions/scripts, crie um arquivo:
chestitemspoints.lua
Configuração:
local t = {
points = 20, -- pontos necessários
items = {{2160, 5}, {2152, 7}, {2158, 3}}, -- {id do item, quantidade} que será dado ao player
time = {5, "sec"} -- tempo para usar o baú novamente
}
Em actions.xml, adicione a tag: <action actionid="ACTION_ID_DO_BAÚ" script="chestitemspoints.lua" />
Baú que dá pontos somente uma vez
Em actions/scripts, crie um arquivo.lua:
chestpoints.lua
Em actions.xml, adicione a tag: <action actionid="ACTION_ID_DO_BAÚ" script="chestpoints.lua" />
NPC
E, antes que peça rsrsrs, um tile que só passa com certa quantidade de pontos.
Movements
Em movements/scripts crie um arquivo:
tilepoints.lua
Em movements.xml: <movevent type="StepIn" actionid="ACTION_ID_DO_PISO" event="script" value="tilepoints.lua"/>