Ir para conteúdo

97582348

Campones
  • Total de itens

    0
  • Registro em

  • Última visita

Histórico de Reputação

  1. Upvote
    97582348 deu reputação a MatheusGlad em Como Editar Magias [Novo Update]   
    Versao 0.1b Tutorial
    Voce nao Sabe nada sobre scripts e nem mesmo como funcionao e quer criar uma magia
    Voce pode ir no classico copy/paste:
    Primeiro Passo:
    Copie uma tag no spells.xml Exemplo:


    E cole logo a baixo uma identica.
    Agora edite certos campos:



    Vermelho Palavras a serem ditas para a magia sair
    Verde Level para Usar a magia
    Amarelo Mana pra Usar a magia

    Negrito Voce deve mudar para o nome do seu script, no caso usaremos eternal extreme winter

    Procure na pasta scripts/attack o bloco de notas chamado eternal winter copieo e cole renomeie-o para eternal extreme winter, abaixo ensino como editar.


    Em seguida voce pode editar certas coisas



    Azul Minimo Dano -- Leve em base que dakele geito que esta 2.7 ira dar 500 de dano se voce multiplicar por 2 o 2.7 ira ficar 5.4 e ira dar 1000 de dano
    Rosa Maximo Dano -- mesmo conceito de cima

    Laranja se voce nao conhece o comando pode ser !z 1,2,3...66 ou /z 1,2,3...66 useo no seu ot e veja um bem legal e apague toda a parte laranja e bote o efeito que voce quer no meu caso irei botar 61

    Conclusao a magia ira ficar com a forma do exevo gran mas frigo com otro dano e com otro efeito

    ___________
    Update 0.2a

    Usando tambem o comando !x ou /x 1,2,3...41

    Na linha da sua magia vai estar assim:




    Para usar os efeitos do /x ou !x voce deve botar antes do EFFECT a palavra DISTANCE e ficara assim:




    Negrito Como devera ficar para utilizar o comando !x ou /x

    Listinha de efeitos e seus devidos nomes:


    ___________________
    Update 0.2b

    Mudando a area da sua spell:

    Repare a linha da nossa primeira spell la em cima




    Neste local voce edita a area da sua magia vamos começar:

    Apague toda akela linha acima em negrito e bote isto:






    Legenda dos numeros:
    0 = nao vai acertar a magia
    1 = aonde a magia vai acertar
    2 = centro que eh o player (nao acertara tambem)

    Agora voce pode fazer uma area que voce queira de qualquer forma
    ___________________
    Update 0.3a

    Como Trocar o Dano da sua Magia:

    Para trocar o tipo de dano repare a linha da magia:



    Vermelho Eh o tipo de dano que ira dar eh so mudalo para outro tipo

    Listinha de Danos:

    COMBAT_PHYSICALDAMAGE - 1COMBAT_ENERGYDAMAGE - 2COMBAT_EARTHDAMAGE - 4COMBAT_POISONDAMAGE - 4COMBAT_FIREDAMAGE - 8COMBAT_UNDEFINEDDAMAGE - 16COMBAT_LIFEDRAIN - 32COMBAT_MANADRAIN - 64COMBAT_HEALING - 128COMBAT_DROWNDAMAGE - 256COMBAT_ICEDAMAGE - 512COMBAT_HOLYDAMAGE - 1024COMBAT_DEATHDAMAGE - 2048PS:Voce pode usar os numeros no lugar das palavras

    ___________________
    Update 0.3b
    Botando em pratica tudo que aprendemos!

    Neste update nos iremos usar todo o conteudo do tutorial para fazer uma magia com varios efeitos,danos e areas diferentes

    Aqui esta o script que criei para trabalharmos em cima dele:


    Legenda:
    Azul Dano de cada wave (onda) da sua magia
    Negrito Area das magias (arr)
    Vermelho Pausa de uma wave para outra, se quizer aumente bote 100,300,500...

    Pronto agora se voce viu os outros updates sabera mudar dano efeito e fazer uma otima magia bem louca

    Video de Demonstraçao:




    __________
    Fim dos Updates (Se voce tiver alguma opniao de update MP para mim que eu faço mais updates)
  2. Upvote
    97582348 deu reputação a Darker em Tutorial Action Scripts   
    Neste tutorial vou explicar como geralmente para trabalhar com os scripts de ação.


     

    1 - Informações úteis (leia-se quando você é novo com isso)

    2 - Comandos

    3 - Fazer useables

    4 - Fazer buscas

     

    Todos id item é usado em 3 e 4 são 7,6 ids item!

    -------------------------------------------------- ------------------

     

    ---- 1 Informações Úteis

     

    Ao editar o arquivo. LUA /. Xml o melhor editor de usar é simples bloco de notas. Você também pode utilizar outros editores como o Word. Mas funciona melhor bloco de notas comigo.

     

    --- 1,1 Armazenar dados

     

    Quando o script em ação ot arquivos que você vai ter que entender o que significa alguma coisa. Uma das coisas importantes são itens nos quais você pode armazenar dados. Aqui vou dar um exemplo:

     

    Código:

    = número 1now o item de armazenamento "número" contém "1". Assim, cada vez vamos chamar o valor de armazenamento "item", teremos a resposta "1".

    Quando você gostaria de realizar cálculos matemáticos que você pode fazer assim:

     

    Código:

    = número + número 1Now não será adicionado um valor ao número de armazenamento. Você pode substituir com + -, / e alguns sinais mais matemática (havn't tentei todos eles).

    Se quiser peça para ser um número aleatório, seria assim:

     

    Código:

    math.random número = (1,10) 1,10 é o min / max número aleatório que o init deve receber.

     

    Também é possível armazenar texto dentro desses itens Starage. Um exemplo:

     

    Código:

    name = "oi, meu nome é Mindstorm" Agora, o armazenamento de itens "nome" conterá o texto "oi, meu nome é Mindstorm".

    Nestes dois exemplos que usei o armazenamento de itens "número" e "nome". No entanto, você pode alterá-los para o que quiser!

     

    --- 1.2 Se afirmações:

    E se comunicado diz apenas que um pedaço de código entre o "se" eo "fim" só será realizada quando as linhas de código entre o "se" eo "depois" está correto.

    Você sempre precisa para fechar um "if" e com "final".

    Exemplo:

     

    Código:

    Se a Apple == 1 então

    "Pedaço de código"

    Código endThis vai realizar o "pedaço de código" somente se o valor de armazenamento "maçã" é 1. Olhe para o "==" parte. Ao usar uma instrução if e você quiser comparar dois fatores que você deve usar o "=" signe duas vezes em vez de uma só vez!

    Se você deseja que o "if" para comparar múltiplos fatores, em um comunicado que será parecido com este:

     

    Código:

    Se maçã e pêra == 1 == 2 então

    "Pedaço de código"

    endNow o "pedaço de código" só será efectuada quando o armazenamento do valor da "maçã" é 1 e "pera" é 2. Claro que você pode colocar como muitos fatores em um if, contanto que você separe-os com um "e".

    Se você gostaria de realizar "pedaço de código", quando o armazenamento do valor da "maçã" é 1 ou quando o armazenamento do valor "pêra" é simplesmente substituir os dois "e" por um "ou".

     

    Digamos que você quer executar "pedaço de code1" quando o armazenamento do valor da "maçã" é 1 e "pedaço de code2" quando o valor de armazenamento "maçã" não é 1. Ela terá

    para olhar como este:

     

    Código:

    Se a Apple == 1 então

    "Pedaço de código"

    mais

    "Pedaço de code2"

    endYou simplesmente colocar um "else" entre o "se ... então" e "fim" do. Tudo que está entre o "se .. então" eo "outro" será realizada se o valor de armazenamento de maçãs é 1, tudo que está entre o "outro" e "final" será feita quando e maçã valor de loja é NOT 1

     

    Agora, o que se quiser "pedaço de code1" a ser realizado quando o armazenamento do valor da "maçã" é 1 e "pedaço de code2" quando o armazenamento do valor da "maçã" é 2. Quando a Apple não é nem 1 nem 2 "pedaço de Code3" será realizado.

     

    Código:

    Se a Apple == 1 então

    "Pedaço de code1"

    maçã elseif == 2 então

    "Pedaço de code2"

    mais

    "Pedaço de Code3"

    endNow se o valor de armazenamento "maçã" é um "pedaço de code1" será realizada, mas se o valor de armazenamento "maçã" é de 2 ONLY "pedaço de code2" será realizado!

    Quando a maçã não é nem vermelho, nem verde "pedaço de código 3" será realizado.

    Você pode colocar quantas "elseif ... então" 's entre o "se ... então" e do "outro" como você quiser.

    Se você quiser que nada aconteça quando a maçã não é nem 1 ou 2 simples remover o

    mais

    "Pedaço de Code3"

     

    Quando você estiver usando "==" entre a Apple e 1 (se a maçã == 1, então) que você está comparando. Então você diz, se o valor de armazenamento de "maçã é um" então ....

    Quando você usa o "==" o sinal, a parte em frente ao "==" (maçã) na maioria das vezes representa um item de armazenamento.

    Mas seria bom se pudéssemos fazer outras coisas, em seguida, comparar os fatores! Portanto, podemos colocar algumas coisas diferentes entre o valor de armazenamento e, em seguida, coisa que você quer comparar (ou qualquer outra coisa) que ele.

    Exemplos:

    - Se a Apple> 1, então (só será realizado se o valor de armazenamento "maçã" é maior que 1)

    - Se a Apple <1 então (só será realizado se o valor de armazenamento "maçã" é menor que 1)

    - Se a Apple ~ = 1 então (só será realizado se o valor de armazenamento "maçã" não é 1)

    - Se> Apple = então (só será realizado se o valor de armazenamento "maçã" é 1, ou maior, então 1)

    - Se <= maçã então (só será realizado se o valor de armazenamento "maçã" é 1 ou menor que 1)

     

    --- 1.3 Para declarações

     

    Para afirmações são completamente diferentes, em seguida, se as declarações. Aqui está um exemplo:

     

    Código:

    1,10 para a Apple fazer

    doPlayerSendTextMessage (cid, 18, maçã)

    "DoPlayerSendTextMessage (cid, 18, maçã)" final é uma função (mais sobre isso depois), que irá enviar uma mensagem para o jogador com um texto. Agora, o texto que será enviado é o contém da "maçã" de armazenamento de item. Neste código para declaração vai criar um loop. Ele irá repetir "doPlayerSendTextMessage (cid, 18, maçã)" até que a maçã valor de armazenamento é de 10.

    [/ I] para a maçã nr1, nr2 fazer [/ i]. Aqui nr1 é o número inicial, NR2 é o número de acabamento. O laço for vai automaticamente aumentar o valor do depósito item "maçã" cada vez que repete o ciclo.

     

    --- 1,4 demonstrações Repetir

     

    Repetir declarações vai repetir um trecho de código até que alguma coisa atinge um valor. Exemplo:

     

    Código:

    Repita

    "Pedaço de código"

    Até NumberOfApples> NumberOfPearsNow o "pedaço de código" wil ser repetido unstill o valor de armazenamento NumberOfApples é maior que o valor NumberOfPears armazenamento. Claro que você pode mudar NumberOfPears em um número.

     

    ---- 2 Comandos

    Quando a ação de script arquivos existem alguns comandos que são úteis para saber. Aqui vou explicar uma vez que você irá usar mais.

     

    "Função onUse (cid, item, frompos, item2, topos)":

    Isso é o que cada script de ação começa com. O onUse function () apenas significa que você está usando alguma coisa (um item ou outro qualquer). Existem alguns valores de armazenamento que são dadas no Action Script, que você não tem que configurar! Estes valores de armazenamento são:

    -Cid: A pessoa que usa o item (informação sobre a pessoa que estiver usando).

    -Item: Informações sobre o item que ele está usando. (Isso se você ctrl-clique sobre uma baga informações arbusto azul muito al sobre esse arbusto azul é armazenado dentro do valor de armazenamento de item).

    -Frompos: De que posição ele vai usar o item.

    -Item2: se ele está usando o item em alguma coisa, item2 contém dados desse item.

    -Topos: a posição que ele está usando para o item.

    Tenha em mente que onUse fuction () sempre termina com um "fim"

     

    - Não funciona

     

    "DoPlayerSay (cid," oi ", 2)":

    Este tipo de função vai um recado para o jogador. Agora, o jogador seria automaticamente dizer oi.

     

    "DoPlayerSendTextMessage (cid, 22," Hi .")":

    Se você digitar isso no seu script de ação que irá enviar a mensagem para Oi Cid. Cid é o jogador que está usando um objeto. 22 é a cor que a mensagem deve ser mostrada dentro (1-22 de trabalho, com certeza, maior que aqueles que eu não sei). numberFor exemplo, se um jogador usa uma alavanca esse script ação será enviar.

     

    Código:

    onUse Função (cid, item, frompos, item2, topos)

    doPlayerSendTextMessage (cid, 22, "oi")

    EndNow cada vez que um jogador usa uma alavanca que ele vai receber uma mensagem dizendo "oi" dentro de sua barra de chat.

     

    "DoPlayerSendCancel (cid," oi ")":

    Esta função se parece muito com o doPlayerSendTextMessage () função. A diferença é que você não pode usar as cores ea mensagem não será mostrado dentro do chat bar, mas na parte inferior da tela. (Normalmente, o texto "está esgotado" ou "você não tem mana suficiente" aparecem lá).

     

    "DoCreateItem (id, número, topos)":

    Esta função irá criar um item sobre o título que você usa. Id é o ID do item que deve ser criado, o número é a quantidade do mesmo, topos é a posição onde deve ser criado. Lembra quando você usar um topos item já é o coords

     

    "DoDecayItem (item.uid)":

    Esta função irá decair um item. Isso significa que ele irá retornar ao seu original item.id. (Por exemplo buracos pá voltar a montes de pedra).

     

    "DoPlayerAddHealth (cid, 100)":

    Isso vai acrescentar 100 para a saúde do jogador (CID). Você pode substituir 100 ofcourse por qualquer número que você gostaria! Você também pode fazer o 100 um número negativo, este número será removido da saúde dos jogadores.

     

    "DoPlayerAddMana (cid, 100)":

    Isso vai acrescentar 100 mana para o jogador (CID). (Também pode ser números negativos).

     

    "DoPlayerAddSkillTry (cid, 6,1)":

    Esta função irá adicionar uma habilidade. 6 significa que o tipo de habilidade 1 significa que a quantidade de habilidade para ser adicionado (em% não, ou como um nível, apenas como um número de tentativas).

     

    "DoPlayerSetMasterPos (cid, newpos)":

    Esta função irá definir a posição do novo mestre do jogador. A posição do mestre é a posição onde o jogador irá se ele morrer.

     

    "DoPlayerSetVocation (cid, COV)":

    Esta função irá definir a vocação jogadores. Voc é a vocação como um dígito (0-4).

     

    "DoPlayerRemoveMoney (cid, 100)":

    Esta função irá recolher uma quantidade de dinheiro a partir de mochila do jogador. (Você pode mudar 100 para o que você quiser).

     

    "DoPlayerAddItem (cid, quantidade, itemid)":

    Esta função irá adicionar um item na mochila jogadores. 2400 é o número do item (você pode encontrar os números dos itens no item.xml. 1 representa a quantidade desses itens deve ser dado. Quando 2400 seria um item que você pode entrar em quantidade (moedas de ouro, platina, moedas, runas) será o montante do mesmo. Portanto, se você mandaria (cid, 2152,100), é necessário adicionar 100 moedas de ouro dentro da mochila jogadores. Ao dizer (cid, runeid, 100) você gostaria de acrescentar uma runa do tipo runeid com 100 cargas dentro da mochila jogadores.

    Quando o ID do item que deseja enviar uma garrafa / caneca caneca de cerveja ou algo igualmente o número vai significar o contém da garrafa / mub / caneca de cerveja. (Para o que está dentro). Por exemplo: doPlayerAddItem (cid, bottleid, 0) daria uma garrafa com sangue no seu interior.

     

    "DoPlayerRemoveItem (cid, quantidade, itemid)":

    Esta função irá remover um item do inventário dos jogadores.

     

    "DoRemoveItem (item.uid, item.type)":

    Esta função seria remover o item que você está usando.

     

    "DoSetItemActionId (item.uid, newactionid)":

    Esta função irá alterar o itemid de um item em uma nova itemid.

     

    "DoSetItemText (item.uid," Oi ")":

    Esta função irá definir o texto de uma leitura (livros, cartas ...). Item.uid é a identificação do item original. "Oi" é o texto que você quer ser no interior do legível. (Vou dar mais explicações sobre isso no "4 - Fazer quests" parte).

     

    "DoShowTextWindow (item.uid, 0,0)":

    Esta função irá mostrar a caixa de texto na tela a partir de uma leitura (livros, cartas ....). Ele não pode colocar no texto que você vai ler! Item.uid é o item que deve ser mostrado pequena em cima. 0,0 é algumas coisas em geral (Você não deve usar essa função para tanto, a maioria dos itens lidos já estão definidos.

     

    "DoSendAnimatedText (posição," texto ", 180)":

    Esta função irá enviar um texto animado para a posição (dano, monstros gritando). A posição é a posição. "Texto" é o texto a ser mostrado (também pode ser um dígito). 180 é a cor. (180 é o vermelho, outros você terá que experimentar).

     

    "DoTeleportThing (cid, posição)":

    Esta função seria teleportar o jogador para uma nova posição. Exemplo

     

    Código:

    onUse Função (cid, item, frompos, item2, topos)

    posição = {x = 273, y = 433, z = 9}

    doTeleportThing (cid, posição) ":

    EndThe valor de armazenamento posição tem multiplicar itens armazenados. Depois de ter definido uma posição de, por exemplo, "posição = {x = 273, y = 433, z = 9}" você sempre pode mudar apenas as coordenadas X assim:

    Position.x 272 =

     

    "DoSendMagicEffect (posição 2)":

    Esta função simplesmente envia um efeito mágico para uma posição. Os valores de posição podem ser armazenados da mesma forma como no doTeleportThing () função. 2 significa que o efeito mágico. Eu acho que estes podem variar de 1-15 ou algo parecido. Eu não sei o que todos estes efeitos mágicos fazer (2 puf = 12 é bolha teletransporte).

     

    "DoTransformItem (item.uid, 1945)":

    Com esta função você pode alterar um item existente em um outro item. Ao utilizar esta função, o item que você clicou irá mudar para o 1945 itemid (a oeste da alavanca apontando, neste caso).

     

    "DoSummonCreature (" guerreiro orc ", a posição)"

    Esta função irá invocar uma criatura em uma posição que você definiu. (A posição é um valor de armazenamento).

     

    "DoPlayerFeed (cid, alimentos)";

    Esta função irá alimentar o jogador uma quantidade de alimentos. Eu não sei a quantidade comum para qualquer tipo de alimento embora. Você terá que experimentar com ela.

     

    - Obter funções

     

    "GetPlayerAcces (cid)":

    Essa função vai ter o acesso do leitor. Por exemplo:

    = Acesso getPlayerAcces (CID)

    O valor de armazenamento de acesso passará a conter o número de acesso do leitor.

     

    "GetPlayerGuildId (cid)":

    Esta função irá fazer os jogadores da guilda id.

     

    "GetPlayerHealth (cid)":

    Essa função vai ficar a saúde dos jogadores.

     

    "GetPlayerLevel (cid)":

    Esta função terá a jogadores do nível atual.

     

    "GetPlayerMagLevel (cid)":

    Esta função irá fazer os jogadores magic level atual.

     

    "GetPlayerMana (cid)":

    Esta função terá a mana jogadores.

     

    "GetPlayerMasterPos (cid)":

    Esta função terá a posição de mestre jogadores (na maioria das vezes o templo spawn posição).

     

    "GetPlayerName (cid)":

    Esta função irá obter o nome dos jogadores.

     

    "GetPlayerPosition (cid)":

    Essa função vai ficar a situação jogadores.

     

    "GetPlayerSkill (cid, 6)"

    Esta função irá obter o nível de perícia dos jogadores. 6 significa que o tipo de habilidade (0 = magia, uma espada = 2 = clube, 3 = ax, 4 = distância, 5 = blindagem, 6 = pesca. Pelo menos se não me engano).

    Este é o nível da habilidade, e não o número!

     

    "GetTilePzInfo (posição)":

    Essa função vai verificar se o título é uma zona de protecção ou não. Se o resultado for 0, o título vai ser uma zona de protecção.

     

    "GetPlayerFood (cid)":

    Essa função obtém a quantidade de comida que o jogador tem actualmente comido. (Diminui a cada segundo, ele está online ou na cama). A quantidade normal para um jogador estar "cheio" é de 1200.

     

    "GetThingfromPos (posição)":

    Essa função vai ficar tudo em uma posição. Por exemplo:

     

    Código:

    onUse Função (cid, item, frompos, item2, topos)

    posição = {x = 273, y = 433, z = 9, stackpos = 0}

    positioninfo = getThingfromPos (posição)

    EndPositioninfo agora contém informações sobre o título que a posição é. (Porque é stackpos 0)

    Positioninfo.itemid seria o item.id do título a partir da posição {x = 273, y = 433, z = 9}. Mais informações sobre o stackpos em "4 - Fazer Quests".

     

    "GetPlayerStorageValue (cid, o número de armazenamento)":

    Esta função seria obter um valor de conservação a partir da playersname.xml. Os valores de armazenamento são uma maneira de olhar se o jogador, por exemplo, já fez uma busca. Então, se você gostaria de obter um valor de armazenamento, provavelmente parecido com isto:

    queststatus = getPlayerStorageValue (cid, 2000)

    Queststatus que agora contêm um número (na maioria das vezes esse número é -1 se ele não fez a quest, e se ele tiver um).

     

    - Outras funções

     

    "SetPlayerStorageValue (número, armazenamento cid, 1)"

    Com esta função você deve definir um valor de armazenamento. Por exemplo:

    setPlayerStorageValue (cid, 20001)

     

    "Print (" oi ", item)":

    Uma função muito simples de imprimir um texto com um valor dentro da caixa de armazenamento do servidor. Portanto, este será impresso oi 5 (ou qualquer valor item contém).

     

    ---- Fazendo utilizáveis

     

     

    A primeira coisa que você teria que fazer é editar o actions.xml. Você pode encontrar esse arquivo dentro do dados / ações / pasta.

    Este arquivo contém uma grande quantidade de informações. A maioria das linhas se parecem muito com isso:

     

    Existem dois tipos diferentes de coisas que você pode adicionar a este arquivo.

     

     

     

    Quando você insere um itemid =. O script.lua será realizada quando você usa todos os itens com este ID! Ao utilizar o script.lua o uniqueid só será efectuada quando o item que você usa tem uma ID exclusiva "1000" (ou um outro tipo de identificação).

    Script.lua é o script que será realizada ao usar o item. "Script" pode ser o que quiser. O local de onde o script deve ser-se de dados / ações / ações /.

     

    Agora vamos dizer que queremos fazer um arbusto de mirtilo, que você pode realmente usar!

    Primeiro teríamos que inserir uma linha dentro do actions.xml. Esta linha ficaria assim:

     

    Não importa onde essa linha fica contanto que fica entre a ...

     

    O roteiro, estamos nos referindo é bush.lua. Então vá para os dados / ações / pasta de ações e criar um novo arquivo chamado bush.lua (quando usando o notepad ser cuidado você não criar um bush.txt).

    O bush.lua teria que ficar assim:

     

    Código:

    onUse function (cid, item, frompos, item2, topos)

    se item.itemid == 2785, em seguida,

    doPlayerFeed (cid, 5)

    doCreateItem (2677,3, topos)

    doTransformItem (item.uid, 2786)

    doDecayItem (item.uid)

    final

    endThe if .. olha se o final item.id é igual ao item de id de um arbusto azul. (Na verdade, não necessariamente porque bush.lua só tem de realizar quando se utiliza um arbusto azul.

    doPlayerFeed (cid, 5) alimentam o leitor

    doCreateItem (2677,3, topos) cria três bagas azul em cima da bucha.

    doTransformItem (item.uid, 2786) irá alterar o mato para um arbusto sem bagas azul.

     

    Agora salve o arquivo novamente. Quando iniciar o seu servidor e usar um arbusto azul que você vai comer, e 3 bagas azul vai estar em cima da bucha!

    Eu não descobri como deixar a decadência de Bush para que ele retorne a um arbusto com bagas novamente após algum tempo.

     

    Este foi apenas um item simples utilizável. Agora vamos dizer que queremos criar uma alavanca que abriria um "natal" novo para a posição. Esta é uma ação legal quando você tem mais cidades.

    Você vai para fora do curso precisa adicionar uma linha no actions.xml.

    A primeira coisa que você tem a fazer é definir a ação id da alavanca que vai usar no editor. Isto é como eu fiz isso:

    Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original é 1280x768 261KB de tamanho e pesos.

     

    Agora a alavanca no templo tem a ação ID 2000. Teremos de colocar uma linha no actions.xml que dizer que cada vez que alguém usa o item com o ID de um roteiro original 2000 será realizada. Eu adicionei essa linha

     

    Agora precisamos fazer uma changehometown.lua que será realizado quando alguém usa a alavanca com a Unique ID 2000. Eu fiz assim:

     

    Código:

    onUse function (cid, item, frompos, item2, topos)

    se item.itemid == 1945, em seguida,

    doTransformItem (item.uid, 1946)

    newpos = {x = 100, y = 100, z = 7}

    doPlayerSetMasterPos (cid, newpos)

    mais

    doTransformItem (item.uid, 1945)

    final

    endThe if ... else ... end vai verificar se a alavanca enfrenta o oeste ou leste. Quando caing oeste do id alavanca será 1945. Quando um jogador puxa a alavanca a sua posição de mestre será mudado para uma posição de novo mestre pus no valor de armazenamento newpos. Quando o ID de item não é 1945, a alavanca está voltada para o leste, e em seguida a alavanca só será mudado a face oeste.

     

    Estes dois exemplos onde a calma scripts de ação mais fácil. Mas lembre-se que você pode fazer a maneira mais avançado ou maior uma vez e depois estes!

     

    ---- 4 Fazendo quests

     

    Aqui vou dar uma aula rápida de como você pode fazer buscas avançadas agradável.

     

    Na busca primeiro vou explicar algumas coisas em geral.

    Primeiro: Elevadores (trabalhar com valores de armazenamento e teleports).

    Isto é como olha no meu mapa:

    Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original é 1280x768 184KB de tamanho e pesos.

     

    Este é o 3 º andar. Com um elevador e de manutenção. Quando um jogador quer usar o elevador, mas ele ainda não usou qualquer uma das alavancas que não vai funcionar. Assim, ele terá que usar uma das alavancas, antes que ele será enviado para cima ou para baixo.

    Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original é 1280x768 182kb de tamanho e pesos.

     

    Este é o 2 º andar. Quando você usa a alavanca no 3 º andar será provável teleportado para o 2 º andar.

    Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original é 1280x768 178kb de tamanho e pesos.

     

    Este é o 1 º andar. Repare que isso parece um pouco mais "assustador" e depois os outros dois. Isso é porque ele é um chão onde você só será teleportado para se você tiver todas as 4 alavancas de manutenção (primeira imagem) em uma posição correta.

     

    Aqui está o lever.lua que usei para este script. Os comentários serão iniciar a codificação com um "--comentário"

     

     

    Código:

    onUse function (cid, item, frompos, item2, topos)

    Se a alavanca == 2000 then-Elevador item.uid (screen1)

    queststatus = getPlayerStorageValue (cid, 2000) - - se ele já usou uma das alavancas na manutenção

    se queststatus == -1 then - - se ele não tem usado

    == 1945 se item.itemid texto então alguns simples e movimento da alavanca

    doTransformItem (item.uid, 1946)

    doPlayerSendCancel (cid, "happends Nada").

    mais

    doTransformItem (item.uid, 1945)

    doPlayerSendCancel (cid, "A plataforma que está em pé sobre shakes por um segundo.")

    final

    outro - - se ele usou uma das alavancas

    se item.itemid == 1945 then - - se a alavanca é puxada leste

    doTransformItem (item.uid, 1946)

    doPlayerSendCancel (cid, "Você ouve algo se mover ...")

    outro - - se a alavanca é puxada oeste (happends algo)

    doTransformItem (item.uid, 1945)

    queststatus1 = getPlayerStorageValue (cid, 2005) - - valor de armazenamento das 4 alavancas na sala de manutenção. Eu não queria olhar para a posição da alavanca, porque senti que todos tinham de dar a tacada a alavanca na posição correta.

    queststatus2 = getPlayerStorageValue (cid, 2006)

    queststatus3 = getPlayerStorageValue (cid, 2007)

    queststatus4 = getPlayerStorageValue (cid, 2008)

    se queststatus1 == -1 e queststatus2 == -1 e queststatus3 == 1 e queststatus4 == -1 then - - se a posição das alavancas é assim que você será teleportado para o 1 º andar

    nplayer1pos = {x = 273, y = 433, z = 11}

    doSendMagicEffect (cid, 2)

    doTeleportThing (cid, nplayer1pos)

    outro - - Não se você será teleportado para o 2 º andar

    nplayer1pos = {x = 273, y = 433, z = 10}

    doSendMagicEffect (cid, 2)

    doTeleportThing (cid, nplayer1pos)

    final

    final

    final

    elseif item.uid == == item.uid 2001 ou 2002, em seguida, - - o elevador para voltar ao terceiro andar

    se item.itemid == 1945, em seguida,

    doTransformItem (item.uid, 1946)

    mais

    doTransformItem (item.uid, 1945)

    nplayer1pos = {x = 273, y = 433, z = 9}

    doSendMagicEffect (nplayer1pos, 2)

    doTeleportThing (cid, nplayer1pos)

    final

    elseif item.uid> 2004 e item.uid <2.009 então - chaves para o elevador na sala de manutenção

    se item.uid == 2005, então

    se item.itemid == 1945, em seguida,

    doTransformItem (item.uid, 1946)

    setPlayerStorageValue (cid, 2005,1)

    setPlayerStorageValue (cid, 20001)

    doPlayerSendCancel (cid, "Você trigered algo.")

    mais

    doTransformItem (item.uid, 1945)

    setPlayerStorageValue (cid, 2005, -1)

    final

    elseif item.uid == 2006, em seguida,

    se item.itemid == 1945, em seguida,

    doTransformItem (item.uid, 1946)

    setPlayerStorageValue (cid, 2006,1)

    setPlayerStorageValue (cid, 20001)

    doPlayerSendCancel (cid, "Você trigered algo.")

    mais

    doTransformItem (item.uid, 1945)

    setPlayerStorageValue (cid, 2006, -1)

    final

    elseif item.uid == 2007, em seguida,

    se item.itemid == 1945, em seguida,

    doTransformItem (item.uid, 1946)

    setPlayerStorageValue (cid, 2007,1)

    setPlayerStorageValue (cid, 20001)

    doPlayerSendCancel (cid, "Você trigered algo.")

    mais

    doTransformItem (item.uid, 1945)

    setPlayerStorageValue (cid, 2007, -1)

    final

    mais

    se item.itemid == 1945, em seguida,

    doTransformItem (item.uid, 1946)

    setPlayerStorageValue (cid, 2008,1)

    setPlayerStorageValue (cid, 20001)

    doPlayerSendCancel (cid, "Você trigered algo.")

    mais

    doTransformItem (item.uid, 1945)

    setPlayerStorageValue (cid, 2008, -1)

    final

    final

    retorno 1

    endSo com este código que você fez um script elevador tranquila avançado que pode ser parte de uma missão. Agora, para um script segunda busca. Criando buracos escolher!

     

    Se uma pessoa usa uma pick que eu fiz o servidor executar o script pick.lua. Este é o script pick.lua.

     

    Código:

    onUse function (cid, item, frompos, item2, topos)

    se topos.y topos.x == == 209 e 456 e, em seguida, topos.z == 12 - - coordenadas

    doTransformItem (item2.uid, 383) - - alteração buraco

    mais

    return 0 - - retorno 0 significa que você começa a mensagem. Isso não é possível. (Ou algo do mesmo modo)

    final

    return 1 - - retornar 1 significa que ele tem trabalhado

    endThis é um código muito simples de usar buracos escolher! E se você quiser ter mais furos escolher simplesmente um anúncio topos.x elseif == ... e assim por diante.

    No entanto, eu não descobri como fazer a decadência buraco, por isso vai voltar ao normal após um período de tempo.

     

    Alguém me perguntou se é possível fazer legíveis. Sim, é. Eu trabalhei isso uma vez, mas perdi os dados de como. No entanto eu posso dar um bom palpite sobre como vai funcionar.

    doSetItemText (uid, "texto")

    Com esta função você pode definir o conteúdo de um livro, por exemplo, letras legíveis rola ou outro. uid é o ID único de um item do qual deseja alterar o texto. O texto é claro é o texto que você deseja colocar dentro Mas eu notei que algumas vezes você só pode colocar em cerca de 255 caracteres e não mais. Não sei se todos os servidores tem como aquele. Também acredito que se você colocar em "\ n" isso seria o mesmo que um Enter (linha seguinte).
    Gostou +Rep
    Creditos:Darker(Ediçao),(Traduçao),(e levar ao xtibia.com)
    Mindstorm(Criador)
  3. Upvote
    97582348 deu reputação a MarcelloMendes em [Advanced Reset System 2.0]   
    -= Advanced Reset System 2.0 =-


    By: MarcelloMkez

     
    Fala galerinha, to aqui dinovo , mas agora e com a versão 2.0 do meu 'Advanced Reset System'.
    E como prometido, trazendo algumas novidades:
     
    _________________________________________________________________________________________________________________________________
     
    - Resets agora armazenados diretamente na 'DataBase', acabando com o sistema de Storages, e com o problema dos resets atrasados no look;
     
    - Opções para Abilitar e Desabilitar Condições como por exemplo: 'look = true' , [true,false] configurando como achar melhor;
     
    - E agora '[sTAGES]', para 'premmy' (Premium Account) e 'free' (Free Account);
     
    - Instala o System e cria a Tabela de Resets com o comando "/installreset";
     
    OBS: Sistema testado em 'Mysql' não tenho certeza si funciona em 'sql';
    e Testando em: 8.50 (TFS 0.3.6) e 8.6 (TFS 0.4.0)
    __________________________________________________________________________________________________________________________________
     



     
    Vá em data/Talkactions, e crie um arquivo .lua e nomeie para
     
    advancedResetSystem.lua e Adicione Isso:
     

    --[[ <(Advanced Reset System 2.0)> Autor: MarcelloMkez. Contato: (marcello_dirt@hotmail.com) Versão: 2.0 Testado em: 8.50 e 8.60 TFS: 0.3.6 and 0.4.0 Fórum: http://www.xtibia.com/forum/topic/142463-advanced-reset-system-20/ -=[Características]=- ~( Versão 2.0 )~ - Resets agora Armazenados na DataBase; (Sem Valor de Storage) - Instala o System e cria a Tabela de Resets com o comando "/installreset"; - Resets no Look do jogador ex: 22:10 You see Marcello [Reset 2] (Level 8). He is an elder druid.; - [sTAGES] para "Premium Account" e "Free Account"; ]] --=[Functions]=-- -- installReset()' [instala o Sistema.] -- tableResetInstall()' [Verifica Se o Sistema ja foi instaladao.] -- nowReseting()' [Verifica, retorna o erro ou reseta.] -- getPlayerReset(cid)' [Pega numero de resets do player.] -- checLevelStageReset(cid)' [Verifica o Level para Resetar.] -- newReset(cid)' [Verifica todas as Condições de Reset.] -- addValue(value)' [Adiciona numero de resets.] --=[Comandos de Jogadores]=-- -- "/installreset" -- Só será usado uma vez, para instalar o sistema. -- "!resetar" -- Para Resetar. function onSay(cid, words, param) if words =="!resetar" then --[ Condições de Reset ] -- local coNdConf = { needPz = true, -- Precisa estar em Pz pra resetar? [true, false] needPa = false, -- Precisa ser Premium Account Pra resetar? [true, false] withe = false, -- Players com Pk Withe podem resetar? [true, false] red = false, -- Players com Pk Red pode resetar? [true, false] battle = false, -- Players precisão estar sem battle pra resetar? [true, false] teleport = true, -- Teleportar Player para o templo após resetar? [true, false] look = false, -- Aparecer Resets no Look do Player? [true, false] pid = getPlayerGUID(cid), -- Não Mexer. --[ Configurações do Reset ] -- resetConf = { Level = 350, -- Level Necessário para Resetar. [Valor] backLvl = 8, -- Level que voltará após o Reset. [Valor] time = 5, -- Tempo para o Player deslogar ao resetar, em segundos. [Valor] }, } --[[>> STAGES <<]]-- x=true;X=true -- Não Mexer. local stage = {Abilitar = {x}, Desabilitar = {}, --<< Abilitar Stages?? >>-- [{x};{}] -- [RESETS] | [PREMMY] | [FREE] stage1= {resets= 4, premmy= 330, free= 350}, stage2= {resets= 9, premmy= 340, free= 355}, -- EXPLICANDO e Configurando stages. (Se estiver Abilitado [Abilitar = {x}]) stage3= {resets= 14, premmy= 355, free= 360}, -- resets = Número de resets para o Stage; stage4= {resets= 19, premmy= 360, free= 365}, -- premmy = Level necessário para Premium Accounts; stage5= {resets= 24, premmy= 370, free= 380}, -- free = Level necessário para Free Accounts; stage6= {resets= 29, premmy= 380, free= 390}, -- Coloque em Ordem... stage7= {resets= 35, premmy= 400, free= 410}, -- [OBS: MARQUE UM "X" PARA ABILITAR OU DESABILITAR OS STAGES] stage8= {resets= 40, premmy= 410, free= 440}, -- EX: para desabilitar mude: Abilitar = {}, Desabilitar = {x} stage9= {resets= 45, premmy= 450, free= 450}, stage10={resets= 50, premmy= 465, free= 465}, } --[[>> FIM STAGES <<]]-- --=[Pega Valor de Resets]=-- function getPlayerReset(cid) local qr = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..coNdConf.pid..";") rss = qr:getDataInt("reset", coNdConf.pid) if rss < 0 then rss = 0 end return rss end local success = " ~~ Sucesso! ~~ \nVocê tem agora "..(getPlayerReset(cid)+1).." resets. \nVocê será deslogado em "..coNdConf.resetConf.time.." segundos." ;err = doPlayerSendTextMessage local qrt = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..coNdConf.pid..";");rss_db = qrt:getDataInt("reset", coNdConf.pid) local lvl_query = "UPDATE `players` SET `level` = "..(coNdConf.resetConf.backLvl)..", `experience` = 0 WHERE `id`= " .. coNdConf.pid .. ";" local reset_query = "UPDATE `players` SET `reset` = "..(getPlayerReset(cid)+(1)).." WHERE `id`= " .. coNdConf.pid .. ";" local nolook_query = "UPDATE `players` SET `description` = '' WHERE `players`.`id`= " .. coNdConf.pid .. ";" local look_query = "UPDATE `players` SET `description` = ' [Reset "..(getPlayerReset(cid)+(1)).."]' WHERE `players`.`id`= " .. coNdConf.pid .. ";" --=[Reseta]=-- function addValue(value) if coNdConf.look == false then doRemoveCreature(cid) db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(nolook_query) else doRemoveCreature(cid) db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(look_query) return LUA_NO_ERROR end end function nowReseting() if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -") return true end if getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) then doPlayerPopupFYI(cid, success) addEvent(addValue, coNdConf.resetConf.time*1000, value) else doPlayerPopupFYI(cid, success) addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid))) addEvent(addValue, coNdConf.resetConf.time*1000, value) return true end end --[sTAGES Nao mexer em nada.]-- function checkLevelStageReset(cid) local stages = { {resets= stage.stage1.resets, premmy= stage.stage1.premmy, free= stage.stage1.free}, {resets= stage.stage2.resets, premmy= stage.stage2.premmy, free= stage.stage2.free}, {resets= stage.stage3.resets, premmy= stage.stage3.premmy, free= stage.stage3.free}, {resets= stage.stage4.resets, premmy= stage.stage4.premmy, free= stage.stage4.free}, {resets= stage.stage5.resets, premmy= stage.stage5.premmy, free= stage.stage5.free}, {resets= stage.stage6.resets, premmy= stage.stage6.premmy, free= stage.stage6.free}, {resets= stage.stage7.resets, premmy= stage.stage7.premmy, free= stage.stage7.free}, {resets= stage.stage8.resets, premmy= stage.stage8.premmy, free= stage.stage8.free}, {resets= stage.stage9.resets, premmy= stage.stage9.premmy, free= stage.stage9.free}, {resets=stage.stage10.resets, premmy=stage.stage10.premmy, free=stage.stage10.free}, } local resets = getPlayerReset(cid) for i, tab in ipairs(stages) do if resets <= tab.resets then coNdConf.resetConf.Level = isPremium(cid) and tab.premmy or tab.free break end end if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then err(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -") return TRUE end if getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) then doPlayerPopupFYI(cid, success) addEvent(addValue, coNdConf.resetConf.time*1000, value) else doPlayerPopupFYI(cid, success) addEvent(addValue, coNdConf.resetConf.time*1000, value) addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid))) return true end end function newReset(cid) if(coNdConf.needPz == true) and (getTilePzInfo(getCreaturePosition(cid)) == LUA_ERROR) then err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar em Protection Zone Para Resetar. -") return TRUE end if(coNdConf.needPa == true) and not isPremium(cid) then err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa ser Premium Account para Resetar. -") return TRUE end if(coNdConf.withe == false) and (getCreatureSkullType(cid) == 3) then err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Withe. -") return TRUE end if(coNdConf.red == false) and (getCreatureSkullType(cid) == 4) then err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Red. -") return TRUE end if(coNdConf.battle == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar sem Battle para Resetar. -") return TRUE end local xy = {true,false} table.insert(stage.Abilitar, false) table.insert(stage.Desabilitar, false) if stage.Abilitar[1] == xy[1] and stage.Desabilitar[1] == xy[2] then checkLevelStageReset(cid) elseif stage.Abilitar[1] == xy[2] and stage.Desabilitar[1] == xy[1] then nowReseting() else doPlayerPopupFYI(cid, "LUA_ERROR; Configure corretamente o Sistema de STAGES!") end return true end function tableResetInstall() print(not rss_db and LUA_ERROR or "Tabela de Resets: Instalada ... [success] ") addEvent(newReset, 1000, cid) return false end if tableResetInstall() then end end --=[install System]=-- function installReset() if db.executeQuery("ALTER TABLE `players` ADD reset INT(11) NOT NULL DEFAULT 0;") then print("[MarcelloMkez] -= Advanced Reset System 2.0 por DataBase =- Instalado com sucesso!") return TRUE end print('[Advanced Reset System/MarcelloMkez] Não foi possível instalar o Sistema.') return FALSE end local tt = { "Preparando Instalação...", "Instalando: TableReset Db...", "Instalando: getPlayerReset()...", "Instalando: addValue()...", "Instalando: checkLevelStageReset()...", "Instalando: newReset() and nowReseting()...", "Finalizando Instalação...", "...", success = { "Iniciando...", "function: TableReset Db... [success]", "function: getPlayerReset()... [success]", "function: addValue(value)... [success]", "function: checkLevelStageReset()... [success]", "function: newReset() and nowReseting()... [success]", "Fim da Instalação. ", "by: ~~ MarcelloMkez ~~ \nContato: marcello_dirt@hotmail.com", inst = {"MarcelloMkez","Advanced Reset System 2.0 por DataBase" }, }, } if words == "/installreset" and getPlayerAccess(cid) >= 3 then function install() if installReset() then print(""..tt.success[7].."") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,""..tt.success[8].."") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "["..tt.success.inst[1].."] -="..tt.success.inst[2].."=- Instalado com sucesso!") else print("["..tt.success.inst[1].."] FALHA NA INSTALAÇÃO! [O sistema ja foi instalado].") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "["..tt.success.inst[1].."] FALHA NA INSTALAÇÃO! [O sistema ja foi instalado].") end return 1 end function concl(cid) local typetx = MESSAGE_STATUS_CONSOLE_BLUE print(""..tt.success[7].."") print(""..tt[8].."") doPlayerSendTextMessage(cid, typetx,""..tt.success[7].."") doPlayerSendTextMessage(cid, typetx,""..tt[8].."") addEvent(install, 1000,cid) end function finall(cid) local typetx = MESSAGE_STATUS_CONSOLE_BLUE print(""..tt.success[6].."") print(""..tt[7].."") doPlayerSendTextMessage(cid, typetx,""..tt.success[6].."") doPlayerSendTextMessage(cid, typetx,""..tt[7].."") addEvent(concl, 3000,cid) end function installDd(cid) local typetx = MESSAGE_STATUS_CONSOLE_BLUE print(""..tt.success[5].."") print(""..tt[6].."") doPlayerSendTextMessage(cid, typetx,""..tt.success[5].."") doPlayerSendTextMessage(cid, typetx,""..tt[6].."") addEvent(finall, 1000,cid) end function installCc(cid) local typetx = MESSAGE_STATUS_CONSOLE_BLUE print(""..tt.success[4].."") print(""..tt[5].."") doPlayerSendTextMessage(cid, typetx,""..tt.success[4].."") doPlayerSendTextMessage(cid, typetx,""..tt[5].."") addEvent(installDd, 1000,cid) end function installBb(cid) local typetx = MESSAGE_STATUS_CONSOLE_BLUE print(""..tt.success[3].."") print(""..tt[4].."") doPlayerSendTextMessage(cid, typetx,""..tt.success[3].."") doPlayerSendTextMessage(cid, typetx,""..tt[4].."") addEvent(installCc, 1000,cid) end function installAa(cid) local typetx = MESSAGE_STATUS_CONSOLE_BLUE print(""..tt.success[2].."") print(""..tt[3].."") doPlayerSendTextMessage(cid, typetx,""..tt.success[2].."") doPlayerSendTextMessage(cid, typetx,""..tt[3].."") addEvent(installBb, 1000,cid) end function toInstall() local typetx = MESSAGE_STATUS_CONSOLE_BLUE print(""..tt.success[1].."") print(""..tt[2].."") doPlayerSendTextMessage(cid, typetx,""..tt.success[1].."") doPlayerSendTextMessage(cid, typetx,""..tt[2].."") addEvent(installAa, 1000,cid) end function preparation() local typetx = MESSAGE_STATUS_CONSOLE_BLUE print(""..tt[1].."") doPlayerSendTextMessage(cid, typetx,""..tt[1].."") addEvent(toInstall, 3000,cid) end if preparation() then end end return 1 end --=[by: MarcelloMkez]=--
     
    E em Talkactions.xml adicione isso:

    <talkaction words="!resetar;/installreset" event="script" value="advancedResetSystem.lua"/>


     

     


     
    Instalando o Sistema

     
    - Após adicionar o script em TalkActions e em Talkactions.xml
     
    Use o comando "/installreset" em jogo,
     
    OBS: o System so pode ser Instalado pelo GOD!
     
    A a instalação será mostrada no default, e no Distro!
     
    Apos isso, Sistema Instalado!
     



     
    'Explicando stages:
     
    Stage 1:
     
    stage1= {resets= 4, premmy= 330, free= 350},
     
    resets: ---- Quantidade de Resets para o stage.
    premmy: ---- Level que Premmium Accounts podera Resetar. (no caso ate 4 resets)
    free: ------ Level que Free Accounts podera Resetar. (no caso ate 4 resets)
     
    --- Bom como vcs pode ver, vai ate o 'Stage 10':
     
    stage10={resets= 50, premmy= 465, free= 465},
     
    --- Intao irei explicar, caso queiram adicionar mais stages...
     
    Use 'Ctrl + G' com o script aberto, e digite 71, e aperte enter,
     
    logo ira direcionar para linha 71 que no caso é esta:
     
    stage10={resets= 50, premmy= 465, free= 465},
     
     
    - Abaixo dela adicione uma exatamente igual, so modificando o numero do stage ficando assim:
     
    stage10={resets= 50, premmy= 465, free= 465},
    stage11={resets= 55, premmy= 465, free= 465},
     
    Agora na linha 134 vai ta esta:
     
    {resets=stage.stage10.resets, premmy=stage.stage10.premmy, free=stage.stage10.free},
     
    Voce faz a mesma coisa adicionando embaixo da linha 134 porem mudando os numeros, ficando assim:
     
    {resets=stage.stage10.resets, premmy=stage.stage10.premmy, free=stage.stage10.free},
    {resets=stage.stage11.resets, premmy=stage.stage11.premmy, free=stage.stage11.free},
     
     
    Pronto,
     
    Ja esta adicionado o 'Stage 11' xD,
     
    Assim voce pode adicionar quantos stages quiser, basta configurar corretamente...
     
    Mais duvidas postem aqui.
     
     



     
    Aqui termino o post!
     
    espero que gostem,
     
    grato:
     
    ~~MarcelloMkez~~
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...