
Solutions
-
Dwarfer's post in (Resolvido)Remover repetição de fala was marked as the answer-- ASSIM if getPlayerLevel(cid) < 250 then doPlayerSendTextMessage(cid, 20, "Blessings free up to level 250.") for i = 1, 5 do doPlayerAddBlessing(cid, i) end end -- OU ASSIM if getPlayerLevel(cid) < 250 then doSendAnimatedText(getPlayerPosition(cid), "Bless!", COLOR_ORANGE) for i = 1, 5 do doPlayerAddBlessing(cid, i) end end
-
Dwarfer's post in (Resolvido)Exana All was marked as the answerlocal conditions = {CONDITION_FIRE, CONDITION_ENERGY, CONDITION_POISON} -- adicione as conditions que você quer remover local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) function onCastSpell(cid, var) for i, v in pairs(conditions) do doRemoveCondition(cid, v) end doSendMagicEffect(getPlayerPosition(cid), CONST_ME_STUN) return doCombat(cid, combat, var) end
-
Dwarfer's post in (Resolvido)[PEDIDO] Clean em uma certa coordenada was marked as the answerEm globalevents/scripts crie um arquivo:
cleanplaces.lua
local areas = { [1] = {{x = 1, y = 1, z = 1}, 2, 2}, [2] = {{x = 1, y = 1, z = 1}, 1, 1}, [3] = {{x = 1, y = 1, z = 1}, 3, 3}, [4] = {{x = 1, y = 1, z = 1}, 3, 3} } function onThink(interval) for i, v in pairs(areas) do for _, pos in ipairs(getArea(unpack(v))) do doCleanTile(pos) doSendMagicEffect(pos, CONST_ME_POFF) end end return true end
Em globalevents.xml, adicione a tag: <globalevent name="CleanPlaces" interval="30000" event="script" value="cleanplaces.lua"/>
Edite o interval para o tempo que você quer que o clean seja executado. Coloquei como exemplo 30 segundos.
Para configurar o script:
{{x = 1, y = 1, z = 1}, 2, 2}, --> {{posição do centro da sua área}, variação para a posição X a partir do centro, variação para a posição Y a partir do centro}
Neste caso, está cobrindo uma área de 5x5 sqms. Caso fosse 1,1 seria uma área de 3x3 e por aí vai. É só configurar para a sua área.
-
Dwarfer's post in (Resolvido)System Points In Game was marked as the answerComo 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"/>
-
Dwarfer's post in (Resolvido)Script Inteligente de Invasão para Evento was marked as the answerSegue o mod:
A configuração é autoexplicativa, mesmo assim, para que não restem dúvidas:
Adicione no arquivo do boss que será criado na boss area, antes de </monster>:
<script> <event name = "InvasionBossDeath"/> </script>
Lembrando que o evento só será executado caso o boss esteja dentro da boss area.
-
Dwarfer's post in (Resolvido)Death Cast com 2 tipos e script de house dono was marked as the answerEm creaturescripts/scripts crie um arquivo:
Em creaturescripts.xml, adicione a tag: <event type="think" name="Home" event="script" value="NOMEDOSEUARQUIVO.lua"/>
E no login.lua, registre o evento: registerCreatureEvent(cid, "Home")
O outro você encontra aqui mesmo no fórum, só é dar uma procurada.
-
Dwarfer's post in (Resolvido)ITEM X LOCAIS X TP was marked as the answerEm actions/scripts crie um arquivo:
levertp.lua
Em actions.xml, adicione a tag: <action actionid="ACTION_ID_DA_ALAVANCA" script="levertp.lua" />
-
Dwarfer's post in (Resolvido)Erros em scripts de evento. was marked as the answerSobre o print que aparece ao iniciar o servidor, no arquivo do globalevents, tira essa linha:
print(getPlayersInBlood().. "Jogadores no Blood Castle")
-
Dwarfer's post in (Resolvido)Conflito entre 3 scripts, e 1 erro em outro + conversão was marked as the answerErro Talkaction:
Conversão para SQL:
Erros no Look:
-
Dwarfer's post in (Resolvido)Comando Invasao was marked as the answerEm talkactions/scripts crie um arquivo.lua:
placeinvasion.lua
Em talkactions.xml, adicione a tag: <talkaction words="!invasion" event="script" value="placeinvasion.lua"/>
Exemplo para usar o comando: !invasion NO ESTADIO DO VASCO,Demon,50
-
Dwarfer's post in (Resolvido)Reviver (2 Script) was marked as the answerSe configurou os nomes dos arquivos corretamente, vai funcionar. Edite os corpses também, ali eu escrevi qualquer coisa.
-
Dwarfer's post in (Resolvido)Quest "Com Guild" was marked as the answerEm actions/scripts:
Em actions.xml: <action actionid="ACTION_ID_DA_ALAVANCA" script="NOMEDOARQUIVO.lua" />
-
Dwarfer's post in (Resolvido)Sistema Akatsuki "Command" was marked as the answer
-
Dwarfer's post in (Resolvido)Erro Raspadinha was marked as the answer
-
Dwarfer's post in (Resolvido)Modificar Script de Weapons was marked as the answer
-
Dwarfer's post in (Resolvido)Spell mudando outfit was marked as the answerlocal t = { [1] = {[0] = {lookType = 156}, [1] = {lookType = 152}}, [2] = {[0] = {lookType = 157}, [1] = {lookType = 153}}, [3] = {[0] = {lookType = 158}, [1] = {lookType = 154}}, [4] = {[0] = {lookType = 159}, [1] = {lookType = 155}}, tempo = 15 --tempo em segundos } local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) function onCastSpell(cid, var) outfit = getCreatureOutfit(cid) if t[getPlayerVocation(cid)] then outfit.lookType = t[getPlayerVocation(cid)][getPlayerSex(cid)].lookType doSetCreatureOutfit(cid, outfit, t.tempo*1000) end return doCombat(cid, combat, var) end
-
Dwarfer's post in (Resolvido)Script contra inatividade was marked as the answerAhh! Entendi.
local t = { newpos = {x=1,y=1,z=1}, backpos = {x=1,y=1,z=1}, storage = 11111, tempo = 15 -- em segundos } function onUse(cid, item, fromPosition, itemEx, toPosition) doTeleportThing(cid, t.newpos) doSendMagicEffect(t.newpos, CONST_ME_TELEPORT) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Just time " .. t.tempo .. " sec.") addEvent(checkInativity, t.tempo*1000 ,cid) return true end function checkInativity(cid) if isPlayer(cid) then if getPlayerStorageValue(cid, t.storage) == -1 then doTeleportThing(cid, t.backpos) doSendMagicEffect(t.backpos, CONST_ME_TELEPORT) end end end
-
Dwarfer's post in (Resolvido)[PEDIDO] Ao matar monstro ser teleportado was marked as the answerEm creaturescripts/scripts:
rewardtp.lua
local new_pos = {x = 1559, y = 1317, z = 7} function onDeath(cid, corpse, deathList) local player = deathList[1] doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_ORANGE, "Como você ajudou a matar o Fury Tobirama, você será teleportado para a sala de recompensa.") addEvent(doTeleportThing,1,player,new_pos) return true end
Em creaturescripts.xml: <event type="death" name="RewardTp" event="script" value="rewardtp.lua"/>
No arquivo do monstro, antes de </monster>, adicione:
<script>
<event name="RewardTp"/>
</script>
-
Dwarfer's post in (Resolvido)A conversão ficou certa? Ajuda com erro was marked as the answerSe eu não me engano, o SQLITE faz distinção entre os tipos de dados "INT" e "INTEGER". Como o erro datatype mismatch geralmente acontece quando se altera um tipo de dado, mas a tabela não é atualizada, então você pode modificar na sua database o tipo de dado da coluna "sbw_points" de "INT" para "INTEGER". Pode ser que seja isso, até porque essa linha:
db.query("UPDATE `players` SET `sbw_points`=`sbw_points`+".. score[1][2] .." WHERE `name` = " .. db.escapeString(score[1][1]) .. ";")
Coloca o valor score (INTEGER) no campo INT sbw_points.
-
Dwarfer's post in (Resolvido)Adicionar efeito e texto nessa script was marked as the answerfunction onUse(cid, item) local p = getPlayerPosition(cid) if getPlayerStorageValue(cid, 13700) ~= -1 then doPlayerSendCancel(cid, "Desculpe, mas você já usou esse item.") doSendMagicEffect(p, CONST_ME_POFF) return true end doCreatureSay(cid, "Você ganhou a magia Utura Gran!", TALKTYPE_ORANGE_1) doSendMagicEffect(p, CONST_ME_MAGIC_BLUE ) setPlayerStorageValue(cid, 13700, 1) doRemoveItem(item.uid, 1) return true end
-
Dwarfer's post in (Resolvido)Invasao de Monsters Aleatorios was marked as the answerCrie um arquivo em globalevents.lua:
E adicione a tag no globalevents.xml: <globalevent name="RandomInvasao" interval="10800000" event="script" value="NOMEDOSEUARQUIVO.lua"/>
Edite o interval como queira. Tá configurado para acontecer de 3 em 3 horas e remover a cada 1h e meia.
-
Dwarfer's post in (Resolvido)Npc Points Event e Item Points was marked as the answerAction:
Em actions.xml: <action itemid="ID_DO_ITEM" event="script" value="NOMEDOARQUIVO.lua"/>
NPC:
-
Dwarfer's post in (Resolvido)Acrescentar função no sistema ppoints was marked as the answerNo creaturescripts:
E retire a tag <event type="logout" name="PlayerResetPointsTimer" event="script" value="points.lua"/> do creaturescripts.xml.
No globalevents:
No talkactions:
-
Dwarfer's post in (Resolvido)Erro Login.lua was marked as the answer
-
Dwarfer's post in (Resolvido)[Pedido] NPC DA ITEM APENAS 1 VEZ was marked as the answerNão é que a gente não tenha entendido. Você que não falou nada disso, leia novamente o que você escreveu:
Edite as falas como quiser: