coyotestark45
-
Total de itens
6 -
Registro em
-
Última visita
-
Dias Ganhos
1
Histórico de Reputação
-
coyotestark45 deu reputação a yoh em Talkactions Transferencia de Points entre Players
Adicione em 050-function
function getPlayerVipPoints(cid) local Info = db.getResult("SELECT `premium_points` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. "") if Info:getID() ~= LUA_ERROR then local Points= Info:getDataInt("premium_points") Info:free() return Points end return LUA_ERROR end function doPlayerAddVipPoints(cid, points) local dif = getPlayerVipPoints(cid) + points if dif >= 0 then db.query("UPDATE `accounts` SET `premium_points` = `premium_points` + " .. points .. " WHERE `id` = " .. getPlayerAccountId(cid) .. ";") return TRUE end return FALSE end function doPlayerRemoveVipPoints(cid, points) local dif = getPlayerVipPoints(cid) - points if dif >= 0 then db.query("UPDATE `accounts` SET `premium_points` = `premium_points` - " .. points .. " WHERE `id` = " .. getPlayerAccountId(cid) .. ";") return TRUE end return FALSE end Adione em Talkactions/scripts
transfer.lua
function onSay(cid, words, param, channel) local t = param:explode(",") local player = getPlayerByName(t[1]) local m = tonumber(t[2]) if param == "" then return doPlayerSendCancel(cid, "Command requires param.") elseif not isPlayer(player) then return doPlayerSendCancel(cid, "Sorry, not possible.") end if(not m) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Valor nao Digitado.\n Ex: /transfer "..getPlayerName(cid)..", 20") return TRUE end if getPlayerVipPoints(cid) < m then return doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Voce nao tem pontos suficiente!!") end doPlayerRemoveVipPoints(cid, m) doPlayerAddVipPoints(player, m) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Voce Transferiu "..m.." pontos para "..getPlayerName(player)..".") f = io.open("data/logs/Pontos.txt", "a+") f:write("Player: "..getPlayerName(cid).." transferiu "..m.." pontos para "..getPlayerName(player).."\n\n----------------------------------------------------------\n") f:close() return true end XML :
<talkaction words="/transfer" event="script" value="transfer.lua"/> Eu Utilizo isso no meu Servidor Funciona 100% e sem nenhum Bug !
-
coyotestark45 deu reputação a Mulizeu em Procurado
Primeiramente Irei falar um pouco sobre o systema, ele e bem simples mais e legal!
é um sistema de recompensa pela cabeça do jogador, a medida que o jogador mata outro ele acumula kills, e quando chega a uma determinada quantia de kill, sua cabeça vale uma recompensa, e quem matar esse jogador recebe o premio
--------------------------------------------------------------------------------------
Para ver quantos kills o jogador tem basta falar !kill ou /kill
{maxKill = 2 -- quantia de player que vai matar
---------------------------------------------------------------------------------------
Vá ate a pasta mods crie um arquivo chamado, Procurado.xml e coloque
V 1.0
<?xml version="1.0" encoding="UTF-8"?> <mod name="Procurado" version="1.0" author="Mulizeu" contact="xtibia.com" enabled="yes"> <config name="pcr_func"><![CDATA[ config = {maxKill = 2, storage = 913874, reward = {2160,100}} function getKills(cid) return getPlayerStorageValue(cid,config.storage) < 0 and 0 or getPlayerStorageValue(cid,config.storage) end ]]></config> <event type="login" name="ProcuradoRegister" event="script"><![CDATA[ domodlib('pcr_func') function onLogin(cid) registerCreatureEvent(cid, "ProcuradoRegister") registerCreatureEvent(cid, "ProcuradoKill") registerCreatureEvent(cid, "ProcuradoDeath") if getPlayerStorageValue(cid,config.storage) == -1 then setPlayerStorageValue(cid,config.storage,0) end return true end]]></event> <talkaction words="/kill;!kill" event="buffer"><![CDATA[ domodlib('pcr_func') return doPlayerSendTextMessage(cid,27,"You have "..getKills(cid).." Killer of the peoples") ]]></talkaction> <event type="kill" name="ProcuradoKill" event="script"><![CDATA[ domodlib('pcr_func') function onKill(cid, target, lastHit) if isPlayer(cid) and isPlayer(target) == TRUE then setPlayerStorageValue(cid, config.storage, getKills(cid)+1) doSendAnimatedText(getCreaturePosition(cid),"+Kill",math.random(1,5)) if getKills(cid) == config.maxKill then doBroadcastMessage("The Player "..getCreatureName(cid).." was Killer "..config.maxKill.." people and now his head is worth "..config.reward[2].." "..getItemNameById(config.reward[1]) , 22) end end return true end]]></event> <event type="death" name="ProcuradoDeath" event="script"><![CDATA[ domodlib('pcr_func') function onDeath(cid, corpse, deathList) if isPlayer(deathList[1]) and getKills(cid) >= config.maxKill then doPlayerAddItem(deathList[1],config.reward[1],config.reward[2]) setPlayerStorageValue(cid, config.storage, 0) doBroadcastMessage("The Player "..getCreatureName(deathList[1]).." was Killed "..getCreatureName(cid).." and earned his reward" , 20) end return true end ]]></event> </mod>
Aceito Sujestões e ideias para melhorar o systema
Agradeço ao VODKART, por ter passado para mods,e deixar o script melhor configuravel
-
coyotestark45 deu reputação a Yan Liima em [Resolvido] Help Bug Otclient ao soltar effect distance [SEM RESPOSTA] Podem fechar
Sobre o terminal me refiro o terminal do Otclient mesmo(CTRL + T). Provavelmente lá gera algum erro. Bom, como você alterou para uint16 tente adicionar no final do arquivo otclientrc.lua isto:
-- g_game.enableFeature(16) connect(g_game, { onGameStart = function () g_game.enableFeature(GameExtendedClientPing) end }) connect(g_game, { onGameStart = function () g_game.enableFeature(16) end })
Ou verifique seu .spr e dat e tente utilizar estendido ou não estendido.
-
coyotestark45 recebeu reputação de 880123 em Suporte cave exclusiva globalevents
rapaz, se nao me engano, vc pega os tiles da horizontal e vertical, exemplo: vc pega os tiles da horizontal, pegando do primeiro tile, e pega o vertical pegando da parte final da cave, formando um area quadrada. imagino que seja assim
-
coyotestark45 deu reputação a GoD_RaFkS em → Otserv Auto Restarter
Tutorial ÓTIMO, que vai ajudar muita gente.
E como sei que no Windows Seven é bem diferente o processo para desativar o relatório de erros, vou aproveitar o Tópico para ensinar como fazê-lo no Windows 7!
Desativando o relatório de erros do Windows 7:
Vá em Inciar > digite na barra de pesquisa "escolher como reportar problemas" > após aberto o item anterior, clique em Selecionar os programas a serem excluídos do relatório > clique em adicionar > vá até a pasta do seu OT e selecione o seu executor.exe (no caso deste tópico, por exemplo, selecione o OTServ.exe) > Dê OK.
Pronto. Desta forma, seu Windows continuará enviando todos os relatórios de erros, exceto o do seu OT. Sendo assim, seu Auto-Restarter Funcionará perfeitamente!
Espero ter ajudado!
-
coyotestark45 deu reputação a Animal Pak em DBOnline Server + Site + Client
Informações:
Mapa dbviolent editado
Max skills 90
Missões e sagas
Reborn
Esferas do dragão
Novos Monstros
Quests
23 Personagens
Bonus drop para PACC
Kinto System
Emotion System
Cassino
E mais!
Imagens:
Download:
http://www.mediafire.com/download/77mna7tivq6pvwy/Serwer+DBO+By+Ri+Ku+Ru.rar
Scan:
https://www.virustotal.com/pl/url/2096bcdadcbac1322dcef9735f797fd30d390ab36e0a183ae561aa276d12963f/analysis/1438891203/
Créditos:
Royalz
Azuu
elora1992
Placek
Ri Ku Ru
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.