-
Total de itens
2183 -
Registro em
-
Última visita
-
Dias Ganhos
23
Histórico de Reputação
-
SkyLigh deu reputação a Vodk em Marriage System [+Npc]
Atualização: Retirado bug de não conseguir se divorciar Retirado bug do NPC não responder após o pedido ser feito. Retirado outros vários bugs que não to afim de digitar. Introdução: É o sistema de casamento conhecido, porém foi reformulado para funcionar em versões mais recentes.
O sistema contém:
Item: Os jogadores que se casar receberão um Wedding ring com seus nomes e data do casamento.
Outfit: jogadores que se casam recebem outfit, caso se divorciem, perder as outfits.
Look: o look mostra com quem é casado.
Comandos:
/marriage info -- mostra em uma janela o preço do casamento/divórcio e o level minimo para casar.
/marriage status -- mostra com quem é casado e a data do casamento.
Sobre o divorcio: não é preciso que, para se divorciar, os 2 players casados estejam online. Exemplo:
JOÃO e casado com MARIA, JOÃO vai até o npc e paga um preço para de divorciar, só quem pede o divorcio que paga a taxa, logo MARIA não precisa pagar nada pois seu Ex-Patner JOÃO já pagou. O que ela precisa fazer é "assinar" com o npc o seu divorcio também.
Como casar?
Player que vai pedir (1):
Player que vai aceitar (2):
Na sua db execute:
CREATE TABLE marriage_system ( id INTEGER NOT NULL, player_id INTEGER NOT NULL, partner VARCHAR( 255 ) NOT NULL, marriage_date INTEGER NOT NULL, PRIMARY KEY ( id ) ); Caso você ter e querer a outfit Husband e Wife(de casamento) no seu servidor, vá na pasta Data > Xml > outfits.xml e adicione isso na outfit:
quest="150420" que irá ficar assim:
<outfit id="23" quest="150420"> <list gender="0" lookType="329" name="Wife"/> <list gender="1" lookType="328" name="Husband"/> </outfit> Mods:
Npc:
Configuração:
marry_config = { OnlyDifferentSex = false, -- se precisa ser do sexo oposto Marry_Price = 300000, -- quanto vai custar o pedido de casamento Divorce_Price = 100000, -- quanto vai custar o divórcio Level = 50, -- que level precisa ser para casar MaxSqm = 7, -- aqui é quantos sqm eles precisam estar perto um do outro para se casar Text = {'I love you!','My love!','Baby dear!'}, -- frases que vão sair ao se casar RingID = 10502, -- id do ring que receberão ao se casar TimeAccept = 30, -- tempo que o jogador tem para aceitar o pedido de casamento storage1 = 300235, -- n mexa storage2 = 300236, -- n mexa storage3 = 300237 -- n mexa } Alguns membros pediram pra traduzir para o português mas poderia dar conflito em alguns servers.
-
SkyLigh deu reputação a Adm Andrey em Baiak Skull
bom salve salve
eu criei esse ot com ituito de colocar on porem no momento estou sem host ai pensei em posta eli em outro forum mas esse aqui merece
bom esse mapa ja foi um baiak zik
agora eu atualizei eli mudei bastante coisa
arumei para um pvp melhor
prints logo a baixo
oque mudou:
removi bugs
removi o leg
diminui o tamanho
ajustei o attack speed
novos sistemas
novo templo
novas citys
novos monstro
tem muito mais...
prints:\/
Download
http://www.4shared.com/rar/VH6smrf7ce/BaiakSkull.html?
Scan
https://www.virustotal.com/en/file/d42290acf91326a752fe6a91d5fe6543dacbbc15cf35c6824b106841faf61384/analysis/1446766236/
esse scan e meio loco porque tem antivirus que nao conhece tais extenções
tenho um pedido se auguem por on mi avisa. dou suport para servers on
gostou? quer mais posts como esse? entao deixe seu Joinha
REP+ = + posts de qualidade
um verdadeiro campeão e aqueli que perde porem aprende com seus erros e nao permanece nelis,
momento frase tibianos
mas upa com seus amigos e mata os inimigos
-
SkyLigh deu reputação a Administrador em Monk teleporter
Créditos: Erinsx
Um monk que marcará no mapa shops, depots, etc... E se você pedir ele vai te levar ao templo que você reside
<?xml version="1.0" encoding="UTF-8"?> <npc name="Brevan" script="jorvikmark.lua" walkinterval="0" floorchange="0" speechbubble="1"> <health now="100" max="100"/> <look type="206" head="17" body="54" legs="114" feet="0" addons="0" /> <parameters> <parameter key="message_greet" value="Greetings |PLAYERNAME|! I can mark your {map} to help you find you way around! If you want this, just say {map}! I can also make Jorvik your {home} town. If you want this, say {home}."/> </parameters> </npc> local marks = { [1]={{x=0496,y=0172,z=7},"Temple",MAPMARK_TEMPLE}, [2]={{x=0408,y=0203,z=7},"Depot",MAPMARK_LOCK}, [3]={{x=0478,y=0148,z=7},"Weapons and Armor shops",MAPMARK_SWORD}, [4]={{x=0464,y=0208,z=7},"Magic shop",MAPMARK_STAR}, [5]={{x=0476,y=0201,z=7},"Potions shop",MAPMARK_STAR}, [6]={{x=0390,y=0202,z=7},"Bank",MAPMARK_DOLLAR}, [7]={{x=0433,y=0235,z=7},"Adventurer Supplies",MAPMARK_BAG}, [8]={{x=0480,y=0163,z=7},"Mount Seller",MAPMARK_EXCLAMATION}, [9]={{x=0430,y=0210,z=7},"Loot Buyer",MAPMARK_TICK}, } local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local player = Player(cid) if msg == "map" then for i = 1, #marks do player:addMapMark(marks[i][1],marks[i][3],marks[i][2]) end selfSay('I have marked your map for you, good luck!', cid) talkState[talkUser] = 0 elseif msg == "home" then player:setTown(Town(4)) selfSay('It is done! Goodbye.', cid) talkState[talkUser] = 0 else selfSay('Okay, goodbye.', cid) talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) -
SkyLigh deu reputação a Administrador em Roleta em vez de dados
Esse script, feito por Yamo (otland), é uma modificação no actionscript dos dados, o que torna uma roleta (tabela) function onUse(cid, item, fromPosition, itemEx, toPosition) if(fromPosition.x ~= CONTAINER_POSITION) then doSendMagicEffect(fromPosition, CONST_ME_CRAPS) end local value = math.random(5700, 5736) - 5700 local color = "" if(value == 0) then color = "green" elseif(value <= 10 and value % 2 == 0) then color = "black" elseif(value >= 11 and value <= 19 and value % 2 == 1) then color = "black" elseif(value >= 26 and value % 2 == 0) then color = "black" else color="red" end doCreatureSay(cid, getCreatureName(cid) .. ' rolled ' .. value .. ', ' .. color .. '!', TALKTYPE_ORANGE_1) return true end
-
-
-
SkyLigh recebeu reputação de GokuBlack em Evento Double Exp
Fala galera tudo bem? Essa semana teve um membro que pediu um evento de double exp até que consegui fazer usando alguns scripts como base, então vamos ao código.
INSTALAÇÃO
Vá em data/creaturescripts/scripts e em creaturescripts.xml adicione a seguinte tag.
<event type="kill" name="ExpBonus" event="script" value="exp.lua"/> Em data/creaturescripts/scripts crie um arquivo .lua e renomeie para exp.lua e adicione o seguinte código.
function onKill(cid, target) if isPlayer(cid) and isMonster(target) then if getGlobalStorageValue(102590) - os.time() >= 1 then local exp = getExperienceStage(getPlayerLevel(cid), getVocationInfo(getPlayerVocation(cid)).experienceMultiplier) local count = ((getMonsterInfo(string.lower(getCreatureName(target))).experience*1.5*exp)/2) doPlayerAddExperience(cid, count) addEvent(doSendAnimatedText, 500, getCreaturePosition(cid), '+'..count, math.random(50,60)) end else return TRUE end return TRUE end
Agora no data/creaturescripts/scripts e login.lua adicione a seguinte tag.
registerCreatureEvent(cid, "ExpBonus")
Agora vá em data/talkactions/scripts talkactions.xml
<talkaction words="/doubleexp" access="5" event="script" value="exp.lua"/> Em data/talkactions/scripts crie um arquivo.lua e o renomeio para exp.lua e adicione o seguinte código dentro.
function onSay(cid, words, param, channel) local config = { storage = 102590, } if(param == 'cancel') then if getGlobalStorageValue(config.storage) > 0 then setGlobalStorageValue(config.storage, -1) doBroadcastMessage("Double Exp cancelado") end return true end param = tonumber(param) if(not param or param < 0) then doPlayerSendCancel(cid, "Digite por quantas horas o evento ira durar") return true end if getGlobalStorageValue(config.storage) - os.time() <= 0 then setGlobalStorageValue(config.storage, os.time()+param*60*60) doBroadcastMessage("Exp bonus ativado 50% + EXP por "..param.." horas! Aproveite.") end return true end
COMO UTILIZAR
Para ativar o comando digite /doubleexp Quantidade de horas que vai durar o evento Exemplo /doubleexp 3 o evento ira durar por 3 horas.
Para cancelar o evento basta digitar /doubleexp cancel apenas os GOD'S podem utilizar os 2 comandos.
Créditos
--- Pela postagem do tópico e edição nos códigos.
--- Por eu tê pego uma parte de um script dele do creaturescripts.
Espero que gostem
-
SkyLigh recebeu reputação de RobsonSilva em Evento Double Exp
Fala galera tudo bem? Essa semana teve um membro que pediu um evento de double exp até que consegui fazer usando alguns scripts como base, então vamos ao código.
INSTALAÇÃO
Vá em data/creaturescripts/scripts e em creaturescripts.xml adicione a seguinte tag.
<event type="kill" name="ExpBonus" event="script" value="exp.lua"/> Em data/creaturescripts/scripts crie um arquivo .lua e renomeie para exp.lua e adicione o seguinte código.
function onKill(cid, target) if isPlayer(cid) and isMonster(target) then if getGlobalStorageValue(102590) - os.time() >= 1 then local exp = getExperienceStage(getPlayerLevel(cid), getVocationInfo(getPlayerVocation(cid)).experienceMultiplier) local count = ((getMonsterInfo(string.lower(getCreatureName(target))).experience*1.5*exp)/2) doPlayerAddExperience(cid, count) addEvent(doSendAnimatedText, 500, getCreaturePosition(cid), '+'..count, math.random(50,60)) end else return TRUE end return TRUE end
Agora no data/creaturescripts/scripts e login.lua adicione a seguinte tag.
registerCreatureEvent(cid, "ExpBonus")
Agora vá em data/talkactions/scripts talkactions.xml
<talkaction words="/doubleexp" access="5" event="script" value="exp.lua"/> Em data/talkactions/scripts crie um arquivo.lua e o renomeio para exp.lua e adicione o seguinte código dentro.
function onSay(cid, words, param, channel) local config = { storage = 102590, } if(param == 'cancel') then if getGlobalStorageValue(config.storage) > 0 then setGlobalStorageValue(config.storage, -1) doBroadcastMessage("Double Exp cancelado") end return true end param = tonumber(param) if(not param or param < 0) then doPlayerSendCancel(cid, "Digite por quantas horas o evento ira durar") return true end if getGlobalStorageValue(config.storage) - os.time() <= 0 then setGlobalStorageValue(config.storage, os.time()+param*60*60) doBroadcastMessage("Exp bonus ativado 50% + EXP por "..param.." horas! Aproveite.") end return true end
COMO UTILIZAR
Para ativar o comando digite /doubleexp Quantidade de horas que vai durar o evento Exemplo /doubleexp 3 o evento ira durar por 3 horas.
Para cancelar o evento basta digitar /doubleexp cancel apenas os GOD'S podem utilizar os 2 comandos.
Créditos
--- Pela postagem do tópico e edição nos códigos.
--- Por eu tê pego uma parte de um script dele do creaturescripts.
Espero que gostem
-
SkyLigh deu reputação a Caronte em Efeito na Morte
@, preste atenção nos valores que você atribui, você pegou o parâmetro target, que é um id, e atribuiu valor de uma tabela.
@@Dennyz Dias, agora vai funcionar...
function onKill(cid, target, lastHit) if isPlayer(target) then doSendMagicEffect(getThingPos(target), 65) return true end return true end -
SkyLigh deu reputação a Caronte em Efeito na Morte
function onKill(cid, target, lastHit) if isPlayer(target) then doSendMagicEffect(target.pos, 65) end end corrigido.
ele esqueceu de dar o then do if...
-
SkyLigh deu reputação a TaaG em Sistema de nocautear e assaltar o player
Vídeo demonstração
Instalando:
steal.lua (data/actions/scripts)
Actions.xml (data/actions)
<action itemid="id da runa/item" event="script" value="steal.lua"/> Créditos: CandleJack
-
SkyLigh deu reputação a TaaG em Aprender spells por comando
Essa talkaction serve para que o player execute tal comando para aprender a tal spell se tiver a quantidade certa do item.
Exemplo:
!learnspell exori frigo
Se quiser usar só uma quantidade de um único item por spell:
aprendespell.lua (data/talkactions/scripts)
local tab = { ["exori frigo"] = {spell = "Ice Strike", item = {1234, 5}}, -- ["nome da spell"] = {spell = "nome da conjuração da spell", item = {itemid, quantidade}}, ["exori mort"] = {spell = "Death Strike", item = {1234, 5}}, ["exori vis"] = {spell = "Energy Strike", item = {1234, 5}}, ["exori flam"] = {spell = "Flame Strike", item = {1234, 5}}, ["exori tera"] = {spell = "Terra Strike", item = {1234, 5}}, ["exori san"] = {spell = "Divine Missile", item = {1234, 5}} } function onSay(cid, words, param, channel) local sparam = string.lower(param) if(param == "") then return doPlayerSendCancel(cid, "Enter the name of the spell you want to learn.") end if not (tab[sparam]) then return doPlayerSendCancel(cid, "Spell not found.") end if(getPlayerLearnedInstantSpell(cid, tab[sparam].spell)) then return doPlayerSendCancel(cid, "You already have learned this spell.") end if(getPlayerItemCount(cid, tab[sparam].item[1]) >= tab[sparam].item[2]) then doPlayerLearnInstantSpell(cid, tab[sparam].spell) doPlayerRemoveItem(cid, tab[sparam].item[1], tab[sparam].item[2]) doSendMagicEffect(getThingPos(cid), CONST_ME_GIFT_WRAPS) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have learned the spell!") else doPlayerSendCancel(cid, "You need "..tab[sparam].item[2].." "..getItemNameById(tab[sparam].item[1]).." to learn this spell.") end return true end Já se quiser 2 itens por spell, use este script (mesmo arquivo):
local tab = { ["exori frigo"] = {spell = "Ice Strike", item = {1234, 5}, item2 = {5678, 9}}, -- ["nome da spell"] = {spell = "nome da conjuração da spell", item = {itemid, quantidade}, item2 = {itemid, quantidade}}}, ["exori mort"] = {spell = "Death Strike", item = {1234, 5}, item2 = {5678, 9}}, ["exori vis"] = {spell = "Energy Strike", item = {1234, 5}, item2 = {5678, 9}}, ["exori flam"] = {spell = "Flame Strike", item = {1234, 5}, item2 = {5678, 9}}, ["exori tera"] = {spell = "Terra Strike", item = {1234, 5}, item2 = {5678, 9}}, ["exori san"] = {spell = "Divine Missile", item = {1234, 5}, item2 = {5678, 9}} } function onSay(cid, words, param, channel) local sparam = string.lower(param) if(param == "") then return doPlayerSendCancel(cid, "Coloque o nome da spell que deseja aprender.") end if not (tab[sparam]) then return doPlayerSendCancel(cid, "Spell not found.") end if(getPlayerLearnedInstantSpell(cid, tab[sparam].spell)) then return doPlayerSendCancel(cid, "You already have learned this spell.") end if(getPlayerItemCount(cid, tab[sparam].item[1]) >= tab[sparam].item[2] and (getPlayerItemCount(cid, tab[sparam].item2[1]) >= tab[sparam].item2[2])) then doPlayerLearnInstantSpell(cid, tab[sparam].spell) doPlayerRemoveItem(cid, tab[sparam].item[1], tab[sparam].item[2]) doPlayerRemoveItem(cid, tab[sparam].item2[1], tab[sparam].item2[2]) doSendMagicEffect(getThingPos(cid), CONST_ME_GIFT_WRAPS) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have learned the spell!") else doPlayerSendCancel(cid, "You need "..tab[sparam].item[2].." "..getItemNameById(tab[sparam].item[1]).." and "..tab[sparam].item2[2].." "..getItemNameById(tab[sparam].item2[1]).." to learn this spell.") end return true end talkactions.xml (data/talkactions/scripts):
<talkaction words="!learnspell" event="script" value="aprenderspell.lua"/> Não se esqueça de ativar a obtenção da spell na tag da mesma.
É só mudar o valor, de 0 para 1, onde está escrito needlearn:
needlearn="1" Créditos: Suicide/Wise
-
-
SkyLigh deu reputação a Yan Liima em Evento Double Exp
Otima script, e otima organização no topico nem precisaria dizer mais você é foda mesmo Kissy kk é uma pena eu ter parado com tibia, mais eu trabalho com tfs 0.4 poderia adaptar mais primeiro teria que saber o erro...
-
SkyLigh deu reputação a Antharaz em [Pedido] Summon Ring
Vamos lá, as tags do movements.xml:
<movevent type="Equip" itemid="2210" slot="ring" event="script" value="ringsummon.lua"/> <movevent type="DeEquip" itemid="2210" slot="ring" event="script" value="ringsummon.lua"/> O arquivo LUA:
local monster = "Skeleton" tsummon = {} function onDeEquip(cid, item, slot) if tsummon[cid] then doRemoveCreature(tsummon[cid]) tsummon[cid] = nil end return true end function onEquip(cid, item, slot) if not tsummon[cid] then tsummon[cid] = doSummonCreature(monster, getThingPos(cid)) doConvinceCreature(cid, tsummon[cid]) end return true end Só altere o local monster = "Skeleton" com o nome do monstro que irá sumonar.
-
SkyLigh deu reputação a Antharaz em Atualizando função
É porque esta função não existe no TFS 1.0, pelo menos de acordo com o erro apresentado pelo console e pela lista de functions disponibilizada pelo cbrm.
No TFS 1.0 o nome dela é getPlayerSkill.
-
SkyLigh deu reputação a Antharaz em [Ajuda] Movements
Milç perdões, esqueci de uma barra, ta ae ele corrigido:
<movevent type="Equip" itemid="2496" slot="head" event="function" value="onEquipItem"> <vocation id="4" showInDescription="0"/> <vocation id="8" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2496" slot="head" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2501" slot="head" event="function" value="onEquipItem"> <vocation id="1" showInDescription="0"/> <vocation id="5" showInDescription="0"/> <vocation id="2" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2501" slot="head" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="12657" slot="armor" event="function" value="onEquipItem"> <vocation id="1" showInDescription="0"/> <vocation id="5" showInDescription="0"/> <vocation id="2" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="12657" slot="armor" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="3968" slot="armor" event="function" value="onEquipItem"> <vocation id="3" showInDescription="0"/> <vocation id="7" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="3968" slot="armor" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2505" slot="armor" event="function" value="onEquipItem"> <vocation id="4" showInDescription="0"/> <vocation id="8" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2505" slot="armor" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="8983" slot="shield" event="function" value="onEquipItem"> <vocation id="1" showInDescription="0"/> <vocation id="5" showInDescription="0"/> <vocation id="2" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="8983" slot="shield" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2539" slot="shield" event="function" value="onEquipItem"> <vocation id="3" showInDescription="0"/> <vocation id="7" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2539" slot="shield" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2538" slot="shield" event="function" value="onEquipItem"> <vocation id="4" showInDescription="0"/> <vocation id="8" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2538" slot="shield" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="9928" slot="legs" event="function" value="onEquipItem"> <vocation id="1" showInDescription="0"/> <vocation id="5" showInDescription="0"/> <vocation id="2" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="9928" slot="legs" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="7464" slot="legs" event="function" value="onEquipItem"> <vocation id="3" showInDescription="0"/> <vocation id="7" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="7464" slot="legs" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2469" slot="legs" event="function" value="onEquipItem"> <vocation id="4" showInDescription="0"/> <vocation id="8" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2469" slot="legs" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="11117" slot="feet" event="function" value="onEquipItem"/> <movevent type="DeEquip" itemid="11117" slot="feet" event="function" value="onDeEquipItem"/> -
SkyLigh deu reputação a Antharaz em [Ajuda] Movements
O correto seria:
<movevent type="Equip" itemid="2496" slot="head" event="function" value="onEquipItem"> <vocation id="4" showInDescription="0"/> <vocation id="8" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2496" slot="head" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2501" slot="head" event="function" value="onEquipItem"> <vocation id="1" showInDescription="0"/> <vocation id="5" showInDescription="0"/> <vocation id="2" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2501" slot="head" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="12657" slot="armor" event="function" value="onEquipItem"> <vocation id="1" showInDescription="0"/> <vocation id="5" showInDescription="0"/> <vocation id="2" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="12657" slot="armor" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="3968" slot="armor" event="function" value="onEquipItem"> <vocation id="3" showInDescription="0"/> <vocation id="7" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="3968" slot="armor" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2505" slot="armor" event="function" value="onEquipItem"> <vocation id="4" showInDescription="0"/> <vocation id="8" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2505" slot="armor" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="8983" slot="shield" event="function" value="onEquipItem"> <vocation id="1" showInDescription="0"/> <vocation id="5" showInDescription="0"/> <vocation id="2" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="8983" slot="shield" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2539" slot="shield" event="function" value="onEquipItem"> <vocation id="3" showInDescription="0"> <vocation id="7" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2539" slot="shield" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2538" slot="shield" event="function" value="onEquipItem"> <vocation id="4" showInDescription="0"/> <vocation id="8" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2538" slot="shield" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="9928" slot="legs" event="function" value="onEquipItem"> <vocation id="1" showInDescription="0"/> <vocation id="5" showInDescription="0"/> <vocation id="2" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="9928" slot="legs" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="7464" slot="legs" event="function" value="onEquipItem"> <vocation id="3" showInDescription="0"/> <vocation id="7" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="7464" slot="legs" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="2469" slot="legs" event="function" value="onEquipItem"> <vocation id="4" showInDescription="0"/> <vocation id="8" showInDescription="0"/> </movevent> <movevent type="DeEquip" itemid="2469" slot="legs" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="11117" slot="feet" event="function" value="onEquipItem"/> <movevent type="DeEquip" itemid="11117" slot="feet" event="function" value="onDeEquipItem"/> -
SkyLigh deu reputação a Antharaz em Alavanca Monster
Não olhei a extensão dos arquivos ashuasuhhuas, mito u.u agora ele já sabe ql o erro, vou até dar +rep pra vc, mesmo eu não tendo nada haver com o tópico uhashuasu
-
SkyLigh deu reputação a Caronte em Alavanca Monster
Crie um arquivo em creaturescripts/scripts/onkill.lua
function onKill(homi, bixa) if getCreatureName(bixa) == "a Boss" then doSetStorage(65643, 0) end return true end Tag em creaturescripts.xml
<event type="kill" name="killboss" event="script" value="onkill.lua"/> Registre no login.lua
registerCreatureEvent(cid, "killboss") coloque antes do último return true
A alavanca, coloque em actions/scripts/alavancakill.lua
function onUse(cid, item) if getStorage(65643) < 1 then doCreateMonster("a Boss", getThingPos(cid)) doSetStorage(65643, 1) else doPlayerSendCancel(cid, "Voce deve matar primeiro o boss") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) end end Tag em actions.xml
<action actionid="3779" event="script" value="alavancakill.lua"/> Não se esqueça de alterar o nome do boss, no primeiro script que eu te passei.
-
SkyLigh deu reputação a Antharaz em [Pedido] Summon regeneration spell
ta ae:
local config = { mana = 50 --coloque em porcentagem } function onCastSpell(cid, var) if getCreatureMaster(cid) then local master = getCreatureMaster(cid) doCreatureAddMana(master, getPlayerMaxMana(master)*(config.mana/100)) doSendMagicEffect(getCreaturePosition(master), 12) end return true end -
SkyLigh deu reputação a Night Wolf em Desafio do mês. #02
Olá pessoal, seguindo a onda do desafio do mês eu bolei um novo desafio pra vocês no mesmo esquema do anterior (você pode verificar o desafio do mês passado clicando aqui)
Eu vou mais uma vez apresentar um pseudocódigo, algumas partes dele estão mais explícitas na linguagem e outras estão mais teóricas mas isso não vai influenciar tanto.
O desafio é o seguinte: vocês tem que tentar adivinhar do que se trata esse código. Isso vale tanto para explicar partes do código quanto para explicar a idéia por trás dele.
A cada dia (o primeiro não conta) irei postar uma dica para ajudá-los nesse desafio, podendo ser uma dica explicando partes do código ou dicas sobre a funcionalidade dele.
"Mas lobo, por que eu iria tentar descobrir do que se trata seu código estúpido?" Bem meu caro, será uma tarefa legal e esse script é uma idéia bem inovadora.. só o fato de você tentar ler irá ajudá-lo a treinar seu cérebro para a linguagem Lua. E também há uma recompensa!! aquele que acertar ou chegar mais perto verá e terá acesso ao código antes de todo mundo!!111
Espero que vocês aninem pra participar deste tanto quanto animaram para participar do outro
Dicas = { } Lembrando que toda resposta próxima da correta irá ganhar 1 ponto de reputação.
-
SkyLigh recebeu reputação de Wo11ven em Novo Parceiro! OT Checker
Um grande projeto sem dúvida alguma, e parabéns a todos os desenvolvedores e uma ótima parceria do OT checker com o XTibia.
-
SkyLigh recebeu reputação de Administrador em Novo Parceiro! OT Checker
Um grande projeto sem dúvida alguma, e parabéns a todos os desenvolvedores e uma ótima parceria do OT checker com o XTibia.
-
SkyLigh deu reputação a Wo11ven em Novo Parceiro! OT Checker
Um grande Obrigado ao XTibia pela parceria!
Estarei a disposição no subfórum do projeto para tirar as dúvidas do pessoal.
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.