Jump to content

Kurare

Members
  • Content Count

    10
  • Joined

  • Last visited

  • Days Won

    3

Reputation Activity

  1. Upvote
    Kurare got a reaction from JulioCF in Fechar cutin (close cutin)   
    Neste caso no script selecionado, acredito que você deva mudar:

     
     if (!.@i) close; para 
     
    if(!.@i) {  close2; cutin "",255; end; }  
     
    Para mostrar outro cutin basta repetir o comando, o cutin sobrepõe o cutin mostrado anteriormente, no caso o 'cutin "",255' que retira, nada mais é do que uma sobreposição por um cutin vazio.

    Exemplo:
    cutin "npcpadrao",2; mes "Oi, Selecione sua opção"; if( select("Quero ver um duende:Quero ver um elfo") == 1) { next; cutin "duende",2; mes "Aqui está ele, divirta-se!"; close2; cutin "",255; end; } else { next; cutin "elfo",2; mes "Aqui está ele, cuidado com as flechas!"; close2; cutin "",255; end; }  
  2. Upvote
    Kurare got a reaction from ADM Coxinha in Fechar cutin (close cutin)   
    Neste caso no script selecionado, acredito que você deva mudar:

     
     if (!.@i) close; para 
     
    if(!.@i) {  close2; cutin "",255; end; }  
     
    Para mostrar outro cutin basta repetir o comando, o cutin sobrepõe o cutin mostrado anteriormente, no caso o 'cutin "",255' que retira, nada mais é do que uma sobreposição por um cutin vazio.

    Exemplo:
    cutin "npcpadrao",2; mes "Oi, Selecione sua opção"; if( select("Quero ver um duende:Quero ver um elfo") == 1) { next; cutin "duende",2; mes "Aqui está ele, divirta-se!"; close2; cutin "",255; end; } else { next; cutin "elfo",2; mes "Aqui está ele, cuidado com as flechas!"; close2; cutin "",255; end; }  
  3. Upvote
    Kurare got a reaction from ADM Coxinha in Fechar cutin (close cutin)   
    Você deve substituir todos os "close" , após o cutin ser exibido, por "close2" em seguida por o cutin "",255; e end;

    Assim:

     
    close2; cutin "",255; end; Explicando:

    O close normal encerrá o script imediatamente, independente se o jogador clicou nele ou não.
    O close2 percebe quando o jogador clicou em close e continua a executar o que tem mais após ele, até encontrar uma finalização, no caso o end.
    Então, ao clicar no 'close' o comando 'cutin "",255', que retira o cutin, é processado.
  4. Upvote
    Kurare got a reaction from JulioCF in [PEDIDO]   
    Olá,
    seguindo a política de não dar nada pronto vou explicar o que você vai precisar, quanto a parte de script:
     
    Dois eventos: 
    OnPCKillEvent : é chamado para um jogador quando mata outro, a variável (parâmetro) killerrid passa a conter o gid do jogador morto.
    OnPCDieEvent: é chamado para o jogador quando ele morre, a variável killerrid passa a conter o gid do 'assassino' do mesmo.
     
    E você deve usar as seguintes funções de scripts:
    rid2name( variavelnumérica ) - transforma o id em nome, variavel (killerrid no caso) em um nome
    dispbottom "texto"- mostra uma mensagem no chat na cor do chat de guild, só para o jogador
    ou message "texto" - mostra uma mensagem no chat e em cima da cabeça do mesmo em cor normal só para o jogador.
     
    O mesmo NPC pode conter os dois labels/eventos e não deve estar em um mapa acredito eu, por conta do check_near,
    pra tanto na hora de definir o mesmo você pode só por um - no local e na classe assim:
     
    -<tab>script<tab>NPCTESTE<tab>-,{<script>}  quanto à parte do comando, você deveria usar o comando
     bindatcmd - liga um comando ao label do npc
    ex:  
     
    OnInit:bindatcmd "@allinfo",strnpcinfo(3)+"::OnInfo";end;  assim, você pode no label definir o que você deseja, setar uma variável por exemplo.
  5. Upvote
    Kurare got a reaction from JulioCF in Reduzir dano de Reflect   
    Fica na função battle_reflect_damage
    NORMALIZE_RDAMAGE(damage * sc->data[SC_REFLECTSHIELD]->val2 / 100); rdamage = min(status_get_max_hp(target),damage);//colocar aqui#ifndef RENEWAL rdelay = clif->delay_damage(tick+delay,src, src, status_get_amotion(src), status_get_dmotion(src), rdamage, 1, 4);#else rdelay = clif->skill_damage(src, src, tick, delay, status_get_dmotion(src), rdamage, 1, CR_REFLECTSHIELD, 1, 4);#endif
  6. Upvote
    Kurare got a reaction from cared in erro ao ser atacado   
    Da forma que está não dá pra saber qual o erro que você tomou, o arquivo que falta, etc.
    O que o JulioCF sugeriu é que você rediffe o seu executável desmarcando a opção : Ignore Missing File Error
    Não adianta pegar o arquivo da pasta do jogo, tem que pegar o 2014-03-05bRagexe.exe 'limpo' sem ser o patched 
    e depois aplicar o diff que você aplicou, mas sem a opção Ignore Missing File Error
     
    Tentei explicar de uma forma que você entendesse.
  7. Upvote
    Kurare got a reaction from JulioCF in Npcs que andam, duvida   
    É possível das duas formas, tanto com NPC tanto com MOB:   unitwalk <GID>,<x>,<y>; unitwalk <GID>,<target_GID>;   Para obter o GID do MOB você deve setar uma variável com o return da função, ou seja:   set .@mob_id, monster "Prontera",150,150,"Poring",1002,1;   E depois usar a variável para conduzir o mesmo:   unitwalk .@mob_id,150,160;   Lembro que o .@ como prefixo de variável, faz com que a mesma seja de escopo, ou seja, ao finalizar o script ela será apagada, então se o trigger do comando de walk for localizado em outro momento, você deverá usar outro tipo de variável, podendo ser de NPC com o prefixo "." (.mob_id) ou então "$@" ($@mob_id), que será uma váriavel global temporária, ou até mesmo uma array no NPC em caso de múltiplos mobs.
  8. Upvote
    Kurare got a reaction from JulioCF in erro ao ser atacado   
    Da forma que está não dá pra saber qual o erro que você tomou, o arquivo que falta, etc.
    O que o JulioCF sugeriu é que você rediffe o seu executável desmarcando a opção : Ignore Missing File Error
    Não adianta pegar o arquivo da pasta do jogo, tem que pegar o 2014-03-05bRagexe.exe 'limpo' sem ser o patched 
    e depois aplicar o diff que você aplicou, mas sem a opção Ignore Missing File Error
     
    Tentei explicar de uma forma que você entendesse.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.