Jump to content

Kubix

Members
  • Posts

    1
  • Joined

  • Last visited

Posts posted by Kubix

  1. Hello!

    I made arena + LoL announce's, but not completely.

    Here is script:

    // Раз появилось столько арен, почему бы не написать еще одну?
    // By Kubix
    // public script
    // v 1.3
    
    // My pvp top :
    // Что бы проверить свой пвп рейтинг введите в игре npc:MyStat (в окошке привата) и в окошке чата введите "stat".
    - script MyStat -1,{
    OnWhisperGlobal:
    if(@whispervar0$ == "stat"){
    
     mes kill_p+" KILL POINTS";
     mes die_p+" DEATH POINTS";
     close;
    }
    mes "Что бы посмотреть статистику введите 'stat' без кавычек";
    close;
    }
    
    // Arena :
    prontera,150,150,6 script Арена Мастер 888,{
    if(Ranked_player == 1){
     mes "[Arena Master]";
     mes "Вы участвуете в Рейтинговых боях!";
     mes "Хотите продолжить их?";
     next;
     if(select("Да:Нет") == 2) {
      Ranked_Player = 0;
      close;
     }
    
     callsub S_Warp,$map$[3],20,1,1,1,0,0;
     close;
    }
    mes "[Arena Master]";
    mes "Добро пожаловать!";
    //Пример : callfunc("Check_Req",уровень,номер профы которую не пускать");
    callfunc("Check_Req",99,0);
    next;
    switch(select("Публичная арена:Арена без хила:Дуэль арена:Рейтинговая арена:ГвГ арена")){
    
     case 1:
     //Пример: callsub S_Warp,"лока",кол-во человек,снимать доп.баффы?(см в саму функцию),анонс?,рейт арена?,гв арена?,СНИМАТЬ ВСЕ БАФФЫ?; 1-да, 0-нет. 2 - подумаю (шутка[petrosyan]) 
     callsub S_Warp,$map$[0],30,1,1,0,0,0;
     close;
    
     case 2:
     callsub S_Warp,$map$[1],20,0,1,0,0,1;
     close;
    
     case 3:
     callsub S_Warp,$map$[2],2,1,1,0,0,0;
     close;
    
     case 4:
     callsub S_Warp,$map$[3],20,1,1,1,0,0;
     close;
    
     case 5:
     callsub S_Warp,$map$[4],20,1,1,0,1,0;
     close;
    }
    S_Warp:
    if(getmapusers(getarg(0)) >= getarg(1)) {
     mes "Простите, но на арене уже максимум ("+getarg(1)+") человек!";
     close;
    }
    if(getarg(2) == 1){
     sc_end SC_ASSUMPTIO;
    }
    if(getarg(3) == 1){
     mapannounce getarg(0),strcharinfo(0)+" вошел на арену!",bc_map;
    }
    if(getarg(4) == 1){
     if(!Ranked_player) Ranked_player = 1;
     if(!$RankedMap$) $RankedMap$ = $map$[3]; // поменять можно в массиве $map$
     if(kill_p < 50){
      mes "У Вас должно быть больше 50-ти убийств что-бы войти на эту арену!";
      close;
     }
    }
    if(getarg(5) == 1){
     if(getcharid(2); <= 0){
      mes "[Arena Master]";
      mes "Вы не состоите ни в одной гильдии!";
      close;
     }
    }
    if(getarg(6) == 1){
     sc_end sc_all;
    }
    
    warp getarg(0),0,0;
    close;
      OnInit:
      setarray $map$[0],"map","map","map","map","map"; // Пример : setarray $map$[0],"ваша мапа",(ect,ect,ect);
      while(1){
    waitingroom "PvP: "+getmapusers($map$[0])+"|"+getmapusers($map$[1])+"|"+getmapusers($map$[2])+"|"+getmapusers($map$[3])+"|"+getmapusers($map$[4])+"",0;
    sleep 3000;
    delwaitingroom "Арена Мастер";
      }
    }
    
    function Check_Req {
    if(BaseLevel < getarg(0)){
     mes "Простите, но ваш уровень слишком мал!";
     close;
    }
    if(Class == getarg(1)){
     mes "Простите, но вашей профессии запрещено входить на арену!";
     close;
    }
    return;
    }
    -	   script  Announce_PVP   -1,{
    			OnPCKillEvent:
    for(.@i=0; .@i <= getarraysize($map$); .@i ++){
     if(strcharinfo(3) == $RankedMap$){
      callfunc("GetElo",1);
     }
     if(strcharinfo(3) == $map$[.@i]){
      attachrid killedrid;
      $First_Blood = 1;
      if($First_Blood == 1){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[0],bc_map;
       if(.sound) soundeffect "firstblood.wav",1;
      }
    
      @KillingSpree ++;
      @MultiKill ++;
      initnpctimer;
      if(@KillingSpree == 3) {
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[5],bc_map;
       if(.sound) soundeffect "killingspree.wav",1;
      }else if(@KillingSpree == 4){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[6],bc_map;
       if(.sound) soundeffect "rampage.wav",1;
      }else if(@KillingSpree == 5){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[7],bc_map;
       if(.sound) soundeffect "unstoppable.wav",1;
      }else if(@KillingSpree == 6){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[8],bc_map;
       if(.sound) soundeffect "dominating.wav",1;
      }else if(@KillingSpree == 7){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[9],bc_map;
       if(.sound) soundeffect "godlike.wav",1;
      }else if(@KillingSpree > 7){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[10],bc_map;
       if(.sound) soundeffect "legendary.wav",1;
      }
    
      if(@MultiKill == 2) {
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[1],bc_map;
       if(.sound) soundeffect "doubleKill.wav",1;
      }else if(@MultiKill == 3){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[2],bc_map;
       if(.sound) soundeffect "tripleKill.wav",1;
      }else if(@MultiKill == 4){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[3],bc_map;
       if(.sound) soundeffect "quadraKill.wav",1;
      }else if(@MultiKill == 5){
       mapannounce strcharinfo(3),rid2name(killerrid) + .a$[4],bc_map;
       if(.sound) soundeffect "pentaKill.wav",1;
    	@MultiKill = 0;
      }
      /*dispbottom "Поздравляем вы убили человека!";
      dispbottom "К вам уже отправляется наряд полиции (Ст. 105 УК РФ)";
      dispbottom "Ну и посрать вы же получили 1 очко убийства!"; //Эти фразы запатентованы и если у вас есть с этим какие-либо проблемы то увидимся в суде.*/
      kill_p ++;
    
      OnTimer100000:
      if(@MultiKill) @MultiKill = 0;
      if(@KillingSpree) @KillingSpree = 0;
      end;
     }
     end;
    }
    
    OnPCDieEvent:
    attachrid killedrid;
    if(killedrrid == getcharid(0)) end;
    		  for(.@a=0; .@a <= getarraysize($map$); .@a ++){
     if(@KillingSpree) set @KillingSpree,@KillingSpree - @KillingSpree;
     if(@MultiKill) set @MultiKill,@MultiKill - @MultiKill;
    
     if(strcharinfo(3) == $RankedMap$){
      callfunc("TakeElo",1);
     }
     if(strcharinfo(3) == $map$[.@a]){
      die_p ++;
      dispbottom "Поздравляю, вы умерли! Это будет стоить вам 5000 зени + налоги + доставка + на пиво";
      //dispbottom "Не переживайте, ничего хорошего с вами не случилось";
     }
    }
    OnInit:
    setarray .a$,"First Blood!!!","Double Kill!!!","Triple Kill!!!","Quadra Kill!!!","PENTA KILL!!!!!","KILLING SPREE!!!","RAMPAGE!!!","UNSTOPPABLE!!!","IS DOMINATING!!!","IS GODLIKE!!!","IS LEGENDARY!!!";
    end;
    }
    

    Here is sound's

    sorry for Russian script and my bad english.

    I hope that helped you.

×
×
  • Create New...