

Conde Sapo
Visconde-
Total de itens
322 -
Registro em
-
Última visita
Tudo que Conde Sapo postou
-
Desculpa mas não tem END a mais. Desculpa de novo. 99% das pessoas que leem TUTO não manjam NADA de script.é só deixar avisado pros novatos. isso enriquece seu tutorial. Sugestão : no lugar de elseif string.lower(param) == '4' then não use CODE... use QUOTE; dá pra por COR em QUOTE Obs.: Usei só uma linha pra não ficar grande. ponha o seu HELP.LUA com QUOTE fica assim ae na explicação você põe : Ps.: Só pra deixar bem claro ADOREI seu topico... minha intenção é deixa-lo + facil de entender
-
Abrindo Janelas(todas Que Eu Encontrei)
tópico respondeu ao DeadKennedy de Conde Sapo em Actions e Talkactions
o script da janela tem um BUGJanelas podem ser abertas de fora da casa. esse tutorial resolve o problema. KingCPI fez um otimo trabalho de pesquiza. [ ]s. -
Muitos usuários ainda tem essa duvida : vou por um exemplo aqui com o TROLL mas isso se encaixa em qualquer monstro. (Fields também) Nãp mexer nos arquivos de monstro da pasta data\monsters não é lá que tá o problema. editar o arquivo data\items\items.xml procure por "dead NOME_DO_BICHO_QUE_VOCÊ_PRECISA" no meu caso é "dead troll" <item id="2806" name="dead troll"> <attribute key="weight" value="60000"/> <attribute key="containerSize" value="8"/> <attribute key="decayTo" value="2810"/> <attribute key="duration" value="180"/> </item> este é o primeiro estágio do CORPSE do troll veja que esse item DECAYTO pro item 2810 após 180 segundos ou 3 minutos (<attribute key="duration" value="180"/>) agora vamos olhar o segundo estagio desse CORPSE <item id="2810" name="dead troll"> <attribute key="weight" value="60000"/> <attribute key="decayTo" value="2811"/> <attribute key="duration" value="60"/> </item> Este corpse DECAYTO pro item 2811 após 60 segundos ou 1 minuto (<attribute key="duration" value="60"/>) e finalmente o último estágio do CORPSE <item id="2811" name="troll skeleton"> <attribute key="weight" value="60000"/> <attribute key="decayTo" value="0"/> <attribute key="duration" value="60"/> </item> Aqui está o "milagre" da coisa DECATYO ZERO -> é a forma de dizer que o CORPSE some. ele não DECAYTO mais nada. fim... the end... se finito... asta la vista baby ah... sim... após 60 segundos ou 1 minuto também Todos os estágios de CORPSE de mostros precisam seguir essas mesmas etapas. Esse mesmo conceito pode ser aplicado aos FIELD (poison , fire , energy) Todo FIELD decayto FIELD MENOR até o último FIELD que decayto zero Resumindo -> TUDO que some , tem um DECAYTO Acertando o DECAYTO vai funcionar.
-
Npc Que Manda Sua Mensagem Pra Todos Players On-line
um tópico no fórum postou Conde Sapo NPCs, monsters e raids
a duvida de um usuário me insentivou a criar este NPC achei ÓTIMA a ideia dele (excusivo pata XTibia, denunciar aqui se achar este NPC em outro forum) 1° - criando o NPC no MapEditor editar o arquivo MapEditor\creatures.xml local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) -- OTServ event handling functions start -- BLOCOS de funçoes pre-definidas em data\npc\scripts\lib\npcsystem 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 -- OTServ event handling functions end function creatureSayCallback(cid, type, msg) if(npcHandler.focus ~= cid) then return false end msg = string.lower(msg) if msg == 'help' or msg == 'job' then selfSay('Ohh... My job is easy, I\'ll send your message to all players on-line!') talk_state = 0 elseif msg == 'message' or msg == 'msg' or msg == 'mensagem' then selfSay('Do you want to send a message to all players for 1000 gps?') talk_state = 1 elseif msgcontains(msg, 'yes') and talk_state == 1 then selfSay('What the message you want I send ?') talk_state = 2 elseif msgcontains(msg, 'no') and talk_state > 0 then selfSay('Ok than.') talk_state = 0 elseif msg ~= "" and talk_state == 2 then if pay(cid,1000) then selfSay('/B ' .. creatureGetName(cid) .. ' say: ' .. msg) else selfSay('Sorry, you don\'t have money.') end talk_state = 0 end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Agora as instruções basica. Em algumas versões de OT , o broadcast não é "/B" substitua por "/BC" ficando assim : selfSay('/BC ' .. creatureGetName(cid) .. ' say: ' .. msg) (By KingCPI) - Se trocar o nome do npc , acertar em AMBOS arquivos (xml e lua) - Se trocar o valor (1000 gps) acertar na mensagem do npc e na parte que remove a grana do player - Se o comando if pay(cid,1000) then não funcionar , substituir por if doPlayerRemoveMoney(cid,1000) then Testei todas as ações HI BYE YES NO HELP JOB MSG MENSAGEM MESSAGE tentei mandar a mensagem sem a grana e fui recusado por falta dela. acho que não faltou nenhum teste. Resultados : divirtam-se Ps.: qualquer sugestão inteligente eu altero este topico e incluo. (e coloco crédito... claro...) Ps.: BUG DE TEMPO acertado. o NPC parava de falar com você após 30 segundos mesmo que você estivesse conversando com ele faltava a linha return TRUE nas ultimas linhas isso "zera" o tempo cada vez que você fala com o NPC. Ps.: BUG DE MAIUSCULA/MINUSCULA msg = string.lower(msg) Faltava esta linha isso transforma a mensagem em MINUSCULAS se o player falasse "Hi" o npc não ia responder agora vai transformar "Hi" em "hi" e o NPC reconhece. -
Exatamente assim como você disse. lembrando que <attribute key="duration" value="30"/> Após 30 segundos a fruta nasce na arvore de novo. [ ]s Ps.: tem um monte de itens que são parecidos e a diferença entre eles é um pequeno detalhe. (como essas arvores por exemplo) dá pra fazer esse mesmo processo do DECAYTO você clica no item 1 , ele se transforma no item 2 , o presente vai pra BP e depois de XX segundos o item 2 volta a ser o item 1. Usem a criatividade e criem um topico novo. (KingCPI fez isso com minha "chave com numero")
-
Exclusivo para XTibia favor não postar em outro forum (consultar alterações no final do tópico) Vou mostrar como se tira frutas das árvores; Banana Laranja Manga Coco 3 etapas simples Etapa 1 - data\itens\itens.xml procurar 4008 substituir por <item id="4008" name="orange tree"> <attribute key="decayTo" value="4006"/> <attribute key="duration" value="30"/> </item> procurar 5092 substituir por <item id="5092" name="banana tree"> <attribute key="decayTo" value="5094"/> <attribute key="duration" value="30"/> </item> procurar 5156 substituir por <item id="5156" name="mango tree"> <attribute key="decayTo" value="5157"/> <attribute key="duration" value="30"/> </item> procurar 2726 subistiruir por <item id="2726" name="coconut tree"> <attribute key="decayTo" value="5096"/> <attribute key="duration" value="30"/> </item> Explicando: esses 4 itens originalmente são só arvores simples (enfeite, paisagem) deste modo nós transformamos essas árvores em objetos que podem ter uma AÇÂO nesses 4 casos eu puz a opção <attribute key="duration" value="30"/> esse número 30 é o tempo em segundos para "nascer" as frutas na árvore (value="120" levaria 2 minutos) Etapa 2 - data\actions\actions.xml acrescentar estas 4 linhas em qualquer lugar do arquivo é aqui que dizemos pro OT oque fazer quando "click" na árvore Etapa 3 - data\actions\scripts precisamos agora criar os 4 scripts (NOVOS) tem gente que gosta de copiar/colar algum arquivo e apagar o conteudo eu prefiro clicar botão direito do mouse e Novo -> Documento de texto novo arquivo 1 banana_tree.lua novo arquivo 2 mango_tree.lua novo arquivo 3 orange_tree.lua novo arquivo 4 coconut_tree.lua pronto Importante. 5 é o número de frutas que vai aparecer na BP Colocar as árvores que tem as frutas elas vão se tranformar em árvores sem frutas e as frutas vão aparecer na BP Se você colocar a árvore sem fruta, ela vai ser só paisagem (não vai se tranformar em árvore de fruta NUNCA) Créditos 100% By Conde Sapo =================================================================== Acrescentei mais uma ÁRVORE COCONUT TREE a pedido de summers rox =================================================================== Um outro tópico sobre FRUTAS foi criado. Mensionei lá este meu tópico e com isso muitos novatos viram e solicitaram alteração OK... Mão na massa. novo arquivo 1 (Alteração 1) banana_tree.lua Aqui ele tem chance 1 pra 3 de pegar TODAS as 5 bananas novo arquivo 1 (Alteração 2) banana_tree.lua Aqui ele tem chance de não pegar NADA ou pegar de 1 a 5 bananas Fazer essa pequena alteração nas outras árvores. ===================================================================
-
@KingCPI opa... toda boa ideia pode e precisa ser melhorada. faça bom proveito e tomara que venha ÓTIMAS ideias. @Warlokinho vlw Conde Sapo... vc pode me mandar os Scripts das Doors? Ou pra dowload ou manda escrito msm soh que com o nome de cada um. clica em mostar spoil que vai abrir a relação de portas validas.
-
Abrindo Janelas(todas Que Eu Encontrei)
tópico respondeu ao DeadKennedy de Conde Sapo em Actions e Talkactions
outra vez parabéns pela idéia. não testei o script mas parece que tá tudo certinho. só vejo 2 problemas : 1° - 5º no data/actions/actions.xml cole isto no final(antes de </actions>): a maior parte dessas janelas já estão nesse XML vão entrar em conflito. 2° - o script dessa action (abrir/fechar janela) já existe. melhor seria só ACERTAR esse que já existe do que CRIAR o novo. data\sctions\scripts\window_open.lua e data\sctions\scripts\window_close.lua -
Parabéns pela idéia mas achei q faltou explicar mais e encontrei alguns errinhos : exemplo(como está no script): lokinda BR says:!move "1 irá aparecer a lanela com o texto "mto loko 1" !move ou !help ???? Onde está "elseif string.lower(param) >= 'número' then" não tem isso o maximo de helps é 4! Não existe limite. basta incluir + "elseif" no lugar de if txtid < "5" and txtid > "0" then doShowTextDialog(cid, 6087, txt) elseif txtid >= "5" or txtid == "0" then doPlayerSendCancel(cid,txt) end usar if txtid < "5" and txtid > "0" then doShowTextDialog(cid, 6087, txt) else doPlayerSendCancel(cid,txt) end doShowTextDialog Muitos server não tem esse comando (o meu por exemplo) substitua por : doPlayerSendTextMessage ou outro seja aceito em qualquer versão.
-
Eu gostei. o tutorial cumpriu o propósito. ENSINAR A FAZER UMA ILHA TROPICAL. parabéns pela iniciativa. Ps.: Desculpa mas isso não é CABANAesses ID que você usou são de parede de cave um pequeno "morro" no meio da ilha eu engoliria melhor. Qto ao ID da areia não vejo problemas... toda praia tem esse ID e não é DESERTO... é PRAIA. tem inclusive aquele ID que o mar bate as ondas nessa areia. (deu preguiça de procurar o ID)
-
Gostei de ter usado meu TUTO pra tentar "melhorar" a ideia e ter um uso da chave. só vejo um problema.... qualquer player que fizer a quest vai ganhar a mesma chave (5123) e vai poder abrir a porta da sua casa. me corrijam se eu estiver errado.
-
Tem comando pra isso doPlayerRemoveItem(cid,ID_DO_ITEM,1) o item ID_DO_ITEM vai ser removido. Eles já estão ae.Senão NEHUMA porta abriria. [ ]s
-
CODE não aceita cores e não pode usar QUOTE porque não aceita identação. não tem oque "entender' ninguem vai pintar o carro de verde ou rosa é só pra perceber OQUE vai entrar num IF ou no OUTRO. @Gabriel '-' Tirei a palavra QUASE que você não gostou. @Dekoo Sorcerer xD tem que por esses " (1) " "(2)" "(3)"? Não fio. é só pra se orientar. Pra diferenciar um IF do OUTRO IF sem identção fica dificil enchergar o ELSE e o END que pertence. olha este exemplo da mesma aulda sem identação e sem os numeros entre parenteses Eu acho que assim fica pior. Mas se vocês preferirem...........
-
Parabéns. Otimo TUTO. mas pra ficar PERFEITO acho que precisa dividir em varios NPCs cada 1 dá BLESS diferente.
-
Vi que boa parte dos erros nos scripts é IF THEN ELSE alguns scripters ainda tem duvidas sobre isso. então resolvi fazer esta aula super simples , mas acho que dá pra explicar o basico. IF THEN ELSE o comando mais importante em programação. domine isso e você já é um bom programador pra facilitar a explicação vou colocar numeros não usar os numeros entre parenteses. estão ae só pra diferenciar um IF do OUTRO IF(1) carro == azul THEN pinta de vermelho ELSE(1) IF(2) porta == verde THEN abre a porta ELSE(2) toca a buzina END(2) liga o motor END(1) beija o sapo Vejamos agora : conforme for lendo isso , vá acompanhando no quadro de cima. se o carro é azul já pinta de vermelho e cai fora no END(1) e executa a linha seguinte --> beija o sapo se o carro é CINZA , ele não entra no IF(1) mas vai cair no ELSE(1) e vai testar se a porta é verde IF(2) se a porta desse carro CINZA é verde , ele abre aporta e já cai no END(2) e executa a linha seguinte --> liga o motor passa pelo END(1) e executa a linha seguinte --> beija o sapo mas se esse carro CINZA tem a porta BRANCA então ele vai direto pro ELSE(2) --> toca a buzina passa pelo END(2) e executa a linha seguinte --> liga o motor passa pelo END(1) e executa a linha seguinte --> beija o sapo Se o carro for azul e de portas verdes ??? Só entra no IF(1) que é a pergunta principal ele sai direto pro END(1) e não entra no ELSE(1) ele não vai abrir a porta no IF(2) precisa planejar bem os IFs pra evitar problemas assim vejam que cada IF só tem 1 ELSE e 1 END TUDO que entra no IF não passa pelo ELSE TUDO que NÃO entra no IF , obrigatoriamente entra no ELSE e (o mais importante) TUDO que entrou no IF ou no ELSE sempre sai pelo END (e executa as linhas após esse END) qqer duvida eu tento melhorar a explicação. conforme for as duvidas , talvez eu faça outras aulas.
-
por acaso você deixou assim ??? doPlayerSendTextMessage(cid,22,"") :huh:
-
olha meu arquivo data\actions\actions.xml -- Doors<action itemid="1539" script="door_open1.lua" /> <action itemid="1540" script="door_close1e.lua" /> <action itemid="1541" script="door_open1.lua" /> <action itemid="1542" script="door_close1n.lua" /> <action itemid="1209" script="door_open2.lua" /> <action itemid="1211" script="door_close2e.lua" /> <action itemid="1212" script="door_open2.lua" /> <action itemid="1214" script="door_close2n.lua" /> <action itemid="1219" script="door_open1.lua" /> <action itemid="1220" script="door_close1e.lua" /> <action itemid="1221" script="door_open1.lua" /> <action itemid="1222" script="door_close1n.lua" /> <action itemid="1223" script="door_open1.lua" /> <action itemid="1224" script="door_close1e.lua" /> <action itemid="1225" script="door_open1.lua" /> <action itemid="1226" script="door_close1n.lua" /> <action itemid="1227" script="door_open1.lua" /> <action itemid="1228" script="door_close1e.lua" /> <action itemid="1229" script="door_open1.lua" /> <action itemid="1230" script="door_close1n.lua" /> <action itemid="1231" script="door_open2.lua" /> <action itemid="1233" script="door_close2e.lua" /> <action itemid="1234" script="door_open2.lua" /> <action itemid="1236" script="door_close2n.lua" /> <action itemid="1237" script="door_open1.lua" /> <action itemid="1238" script="door_close1e.lua" /> <action itemid="1239" script="door_open1.lua" /> <action itemid="1240" script="door_close1n.lua" /> <action itemid="1241" script="door_open1.lua" /> <action itemid="1242" script="door_close1e.lua" /> <action itemid="1243" script="door_open1.lua" /> <action itemid="1244" script="door_close1n.lua" /> <action itemid="1245" script="door_open1.lua" /> <action itemid="1246" script="door_close1e.lua" /> <action itemid="1247" script="door_open1.lua" /> <action itemid="1248" script="door_close1n.lua" /> <action itemid="1249" script="door_open2.lua" /> <action itemid="1251" script="door_close2e.lua" /> <action itemid="1252" script="door_open2.lua" /> <action itemid="1254" script="door_close2n.lua" /> <action itemid="1255" script="door_open1.lua" /> <action itemid="1256" script="door_close1e.lua" /> <action itemid="1257" script="door_open1.lua" /> <action itemid="1258" script="door_close1n.lua" /> <action itemid="1259" script="door_open1.lua" /> <action itemid="1260" script="door_close1e.lua" /> <action itemid="1261" script="door_open1.lua" /> <action itemid="1262" script="door_close1n.lua" /> <action itemid="3535" script="door_open2.lua" /> <action itemid="3537" script="door_close2n.lua" /> <action itemid="3538" script="door_open1.lua" /> <action itemid="3539" script="door_close1n.lua" /> <action itemid="3540" script="door_open1.lua" /> <action itemid="3541" script="door_close1n.lua" /> <action itemid="3542" script="door_open1.lua" /> <action itemid="3543" script="door_close1n.lua" /> <action itemid="3544" script="door_open2.lua" /> <action itemid="3546" script="door_close2e.lua" /> <action itemid="3547" script="door_open1.lua" /> <action itemid="3548" script="door_close1e.lua" /> <action itemid="3549" script="door_open1.lua" /> <action itemid="3550" script="door_close1e.lua" /> <action itemid="3551" script="door_open1.lua" /> <action itemid="3552" script="door_close1e.lua" /> <action itemid="4913" script="door_open2.lua" /> <action itemid="4915" script="door_close2e.lua" /> <action itemid="4916" script="door_open2.lua" /> <action itemid="4918" script="door_close2n.lua" /> <action itemid="5082" script="door_open1.lua" /> <action itemid="5083" script="door_close1e.lua" /> <action itemid="5084" script="door_open1.lua" /> <action itemid="5085" script="door_close1n.lua" /> <action itemid="3535" script="door_open2.lua" /> <action itemid="3537" script="door_close2n.lua" /> <action itemid="3538" script="door_open1.lua" /> <action itemid="3539" script="door_close1n.lua" /> <action itemid="3540" script="door_open1.lua" /> <action itemid="3541" script="door_close1n.lua" /> <action itemid="3542" script="door_open1.lua" /> <action itemid="3543" script="door_close1n.lua" /> <action itemid="3544" script="door_open2.lua" /> <action itemid="3546" script="door_close2e.lua" /> <action itemid="3547" script="door_open1.lua" /> <action itemid="3548" script="door_close1e.lua" /> <action itemid="3549" script="door_open1.lua" /> <action itemid="3550" script="door_close1e.lua" /> <action itemid="3551" script="door_open1.lua" /> <action itemid="3552" script="door_close1e.lua" /> Sua porta é valida sim. precisa ver se ela consta ae no seu arquivo. 1° - Se ela não tava no seu arquivo actions.xml , coloca a porta e testa. 2° - Se ela já tava ae , verifica se tem alguma outra "chamada" pra esse ID (talvez ela seja uma chamada pra outra quest) Todo o ID só pode aparecer uma unica vez no arquivo actions.xml senão gera conflito. 3° - Se estiver tudo OK ae , tira o Action da porta (sem Action a porta vira uma porta comum) e veja se ela ABRE e FECHA normal. 4° - Se nada disso resolver , eu não sei oq tá havendo ae. 5° - Posta aqui o resultado Positivo ou Negativo. 6° - Não tem 6°
-
Isso tem o nome de "ÉTICA"é dele e vc só pode divulgar com a autorização dele. não tá escrito "não autorizo copia" mas também não tá escrito "PODE COPIAR" ainda tá errado if type == 1 and PlayerPos.x == TruePos.x and PlayerPos.y == TruePos.y and PlayerPos.z = TruePos.z then --------------------------------------------------------------------------------------------------------------------------------------------^ e PELAMORDEDEUS... fecha é com CH
-
@Dekoo Sorcerer xD Parabéns pelo tuto. mas até os erros de portuquês você copiou... deveria ter acertado isso antes de postar. você pediu autorização pro Vufusuf pra postar o tuto dele aqui ??? aproveita e acerta esse erro... tá errado lá também if type == 1 and PlayerPos.x = TruePos.x and PlayerPos.y = TruePos.y and PlayerPos.z = TruePos.z then no lugar de "=" o correto é "==" if type == 1 and PlayerPos.x == TruePos.x and PlayerPos.y == TruePos.y and PlayerPos.z == TruePos.z then
-
você tá usando uma porta valida ??? eu disse isso no topico.
-
Já vi diversos topicos sobre Porta com Chave. Mas nenhum deles falava como coloca número na chave e na porta aqui vai uma forma simples de fazer isso e sem precisar mecher muita coisa. alias , não meche quase NADA. o truque do número tá no ACTION colocar um número no ACTION da chave colocar o mesmo número no ACTION da porta. pronto... tá ae a porta que só abre com a chave. ----------------------------------------------------------- mas pra ficar bonitinho , é legal colocar uma DESCRIÇÃO nessa chave. e ninguem acha uma chave no chão. então vamos fazer uma Quest tipica com baú. não vou explicar muito pois acho q todos já estão verdes de fazer baú de quest. Bora lá. -- Bau com BoneKey 2016 (By Conde Sapo) -- Exclusivo para XTIBIA -- denunciar se aparecer em outro forum function onUse(cid, item, frompos, item2, topos) queststatus = getPlayerStorageValue(cid,2016) if queststatus == -1 then chave = doPlayerAddItem(cid,2092,1) doSetItemActionId(chave,5123) doSetItemSpecialDescription(chave,"Key of Doubt") doPlayerSendCancel(cid,'You have found a Bone Key! Number 5123.') setPlayerStorageValue(cid,2016,1) else doPlayerSendCancel(cid,'Empty') end return 1 end Acho q não tem dúvidas Colocar no Baú um ID qualquer. Neste exemplo eu usei o número 2016 Usei a Bone Key (2092) escolher a sua. Action 5123 - Usar qualquer número. bastando colocar esse mesmo número no ACTION da porta. <------ Super importante isso. (vai aparecer dando LOOK na chave.) Key of Doubt -> Nome da chave. (vai aparecer dando LOOK na chave.) usar sua criatividade. You have found a Bone Key! Number 5123 -> Mensagem qdo clica no baú. (colocar o mesmo número escolhido no Action da chave... claro...) ou só "You have found a key." usar sua criatividade. Empty -> Mensagem pra quem já fez a quest usar sua criatividade.
-
Como Criar Uma Magia Que Sumone Apenas Um Tipo De Monstro?
tópico respondeu ao Conde Sapo de Conde Sapo em Tutoriais de Scripting
local combat = createCombatObject() function onCastSpell(cid, var) TemItem = getPlayerItemCount(cid,ID_DO_ITEM) if TemItem > 0 then doPlayerRemoveItem(cid,ID_DO_ITEM,QUANTIDADE) PlayerPos = getCreaturePosition(cid) doSummonCreature("Cobra", PlayerPos) return 1 else doPlayerSendCancel(cid,"Colocar aqui sua mensagem!") end end Colocar o ID do item que vc deseja. Basta ter 1 com vcDentro de TemItem vem a quantidade de itens que vc tá carregando. Alterar a gosto. Colocar o mesmo ID do item.QUANTIDADE deve ser compativel com a quantidade da linha anterior. Não dá.o OT segue as mesmas regras do Tibia. @Uryuu Then Quincy me perguntou no PM rand = math.random(Inicio, Fim) escolhe um numero aleatório entre Inicio e Fim e guarda em rand rand vem de randônico. Ex.: rand = math.random(7, 9) em rand pode vir resultados 7 , 8 ou 9 FUIZ -
Você Nascido em: Set-2-1994 Eu Nascido em: Set-5-1958 Você nasceu 3 dias antes de mim... Você é + veiow que eu....
-
Para sua informação sou Scripter a 4 anos Você tem 12 anos Você diz que é scripter ha (com H) 4 anos Você tinha 8 anos quando começou ??? nessa aula de matemática eu não faltei 12 - 4 = 8 Ps.: Se eu tiver 20 itens vou ter que "sell" 20 vezes... tem como "ler" o número de itens que tá sendo vendido (sell 20 item) -> tem como ler esse 20 acerta isso que o NPC vai ficar muito bom. Parabéns.
-
Como Criar Uma Magia Que Sumone Apenas Um Tipo De Monstro?
um tópico no fórum postou Conde Sapo Tutoriais de Scripting
infelismente não vi este topico a tempo tá fechado e não pude responder lá http://www.xtibia.com/forum/index.php?showtopic=58221 sei que o lugar não é aqui , mas aqui todos vão ver antes de ser movido. editar o arquivo data\spells\spells.xml acrescentar esta linha (aconselho acrescentar após "<!-- instant spells -->") <instant name="Summon Cobra" words="QueroCobra" aggressive="0" direction="1" lvl="12" maglv="1" mana="5" soul="0" exhaustion="1" prem="1" enabled="1" script="Quero Cobra.lua"><vocation id="2"/><vocation id="1"/><vocation id="6"/><vocation id="5"/></instant> criar o arquivo data\spells\scripts\Quero Cobra.xml local combat = createCombatObject() function onCastSpell(cid, var) PlayerPos = getCreaturePosition(cid) doSummonCreature("Cobra", PlayerPos) return 1 end Os nomes podem ser alterados CLARO mas tenham certeza de alterar no lugar certo e nos 2 arquivos
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.