Перейти к содержанию

PvP Arena v1.5


Enwteyn

Рекомендуемые сообщения

NPC PvP Arena v1.5

Арена clasik

Арена(Без Зелий)

Арена 1 на 1

Арена 2 на 2

Арена GvG

Добавлен анонс входа игроков на арену

Добавлен waitingroom {Показывает скока человек на какой pvp локе}

На каждой арене стоит NPC "выход с кодом"

Установлены mapflag

Изменен cкрипт выхода с арен [ switch(select на if(select ]

Немного переписан код v1.5

//===== eAthena Script =======================================
//= PVP Arena
//===== By: ==================================================
//= Скрипт Арен = Enwteyn + помощь ea-support.ru
//= Скрипт выхода с Арен = Anoob1s
//===== Current Version: =====================================
//= 1.5
//===== Compatible With: =====================================
//= Eathena SVN
prontera.gat,163,168,4 script Арена 707,{
mes "[^0000FFАрена^000000]";
mes "Приветствую Вас, ^FF0000"+strcharinfo(0)+"^000000.";
mes "Выберите пожалуйста одну из арен, куда Вы хотите попасть.";
switch(select("Арена clasik [" + getmapusers("guild_vs1.gat") + " / 100]","Арена(Без Зелий) [" + getmapusers("pvp_n_1-5") + " / 100]","Арена 2x2 [" + getmapusers("guild_vs3.gat") + " / 4]","Арена 1x1[" + getmapusers("guild_vs5.gat") + " / 2]","Арена GvG[" + getmapusers("guild_vs2.gat") + " / 100]","Выход")){
//---ARENA clasik
case 1:
if(getmapusers("guild_vs1.gat") >= 100 ) break;
mapannounce "guild_vs1.gat",""+strcharinfo(0)+" вошел на PvP Арену",0;
warp "guild_vs1",0,0;
end;
//---ARENA Без Зелий
case 2:
if(getmapusers("pvp_n_1-5") >= 100 ) break;
mapannounce "pvp_n_1-5",""+strcharinfo(0)+" вошел на PvP Арену",0;
warp "pvp_n_1-5",0,0;
end;
//---ARENA 2x2
case 3:
if(getmapusers("guild_vs3.gat") >= 4 ) break;
mapannounce "guild_vs3.gat",""+strcharinfo(0)+" вошел на PvP Арену",0;
warp "guild_vs3",0,0;
end;
//---ARENA 1x1
case 4:
if(getmapusers("guild_vs5.gat") >= 2 ) break;
mapannounce "guild_vs5.gat",""+strcharinfo(0)+" вошел на PvP Арену",0;
warp "guild_vs5",0,0;
end;
//---ARENA GvG
case 5:
if(getmapusers("guild_vs2.gat") >= 100 ) break;
if(getcharid(2)<1){ mes "^0000FFВы не в гильдии!!!^000000";close;}
mapannounce "guild_vs2","Игрок из гильдии "+getguildname(getcharid(2))+" вошел на GvG Арену",0;
warp "guild_vs2",0,0;
end;
case 6:
mes "^0000FFХорошо, возвращайся, как захочешь cдохнуть^000000";
close;
}
mes "[^FF0000Извини, на этой арене нет места...^000000]";
close;
//---Waitingroom
OnInit:
OnTimer1000:
delwaitingroom;
waitingroom "PvP|"+(getmapusers("guild_vs1"))+" | "+(getmapusers("pvp_n_1-5"))+" | "+(getmapusers("guild_vs3"))+" | "+(getmapusers("guild_vs5"))+" | "+(getmapusers("guild_vs2"))+"",0;
initnpctimer;
}
//
//---Скрипт выхода с Арен---//
guild_vs1,47,5,5 script Выход с Арены 708,{
set @vihod,rand (12345,99999);
mes "[^0000FFВыход с Арены^000000]";
mes "Приветствую Вас, ^FF0000"+strcharinfo(0)+"^000000.";
mes "Вы уверены, что хотите выйти с Арены?";
if(select("Нет:Да")==1){ close; }
mes "Тогда введите число ^FF0000"+ @vihod +"^000000.";
next;
input @vihod2;
if(@vihod2==@vihod) {
warp "prontera",155,178;
end;
}
else {
mes "[^0000FFВыход с Арены^000000]";
mes "Результат не верный.";
mes "Я не могу Вас выпустить.";
close; }
OnInit:
waitingroom "[Выход]",0;
end;
}
}
//---Выхода---//
pvp_n_1-5,95,60,3 duplicate(Выход с Арены) Выход с Арены#2 708
guild_vs3,49,85,3 duplicate(Выход с Арены) Выход с Арены#3 708
guild_vs5,50,76,3 duplicate(Выход с Арены) Выход с Арены#4 708
guild_vs2,46,06,1 duplicate(Выход с Арены) Выход с Арены#5 708
//
//---МапФлаги---
//
// Арена clasik
guild_vs1 mapflag nowarpto
guild_vs1 mapflag nogo
guild_vs1 mapflag nobranch
guild_vs1 mapflag noteleport
guild_vs1 mapflag novending
guild_vs1 mapflag nodrop
guild_vs1 mapflag noloot
//---Арена(Без Зелий)
pvp_n_1-5 mapflag nowarp
pvp_n_1-5 mapflag nowarpto
pvp_n_1-5 mapflag nogo
pvp_n_1-5 mapflag nobranch
pvp_n_1-5 mapflag noteleport
pvp_n_1-5 mapflag novending
pvp_n_1-5 mapflag nodrop
pvp_n_1-5 mapflag noloot
pvp_n_1-5 mapflag restricted 5
//---Арена 2x2
guild_vs3 mapflag nowarp
guild_vs3 mapflag nowarpto
guild_vs3 mapflag nogo
guild_vs3 mapflag nobranch
guild_vs3 mapflag noteleport
guild_vs3 mapflag noreturn
guild_vs3 mapflag novending
guild_vs3 mapflag nodrop
guild_vs3 mapflag noloot
//---Арена 1x1
guild_vs5 mapflag nowarp
guild_vs5 mapflag nowarpto
guild_vs5 mapflag nogo
guild_vs5 mapflag nobranch
guild_vs5 mapflag noteleport
guild_vs5 mapflag noreturn
guild_vs5 mapflag novending
guild_vs5 mapflag nodrop
guild_vs5 mapflag noloot
//---Арена GVG
guild_vs2 mapflag nowarp
guild_vs2 mapflag nowarpto
guild_vs2 mapflag nogo
guild_vs2 mapflag nobranch
guild_vs2 mapflag noteleport
guild_vs2 mapflag novending
guild_vs2 mapflag nodrop
guild_vs2 mapflag noloot

Изменено пользователем Enwteyn
  • Upvote 5
Ссылка на комментарий
Поделиться на другие сайты

Молодец, постарался.Ставлю +, потом проверю.

Спс

Если что то не так дай знать а то я только учусь.

Хочу до весны немного подучить и сделать сервер норм.

Ссылка на комментарий
Поделиться на другие сайты

  1. здохнуть->сдохнуть
  2. Выберите, пожалуйста, одну из арен
  3. set .@guild, getcharid(2); - зачем? Может вместо ника в объявлении ввести "зашел член гильдии такой-то"
  4. case 5:
    if(getmapusers("guild_vs2.gat") >= 100 ) break;
    if(.guild_arena>0){
    set .@guild, getcharid(2);
    if(.@guild<1){ mes "^0000FFВы не в гильдии!!!^000000";close;}}
    if(.announce>0) { mapannounce "guild_vs1",""+strcharinfo(0)+" вошел на GvG Арену",0;}
    warp "guild_vs2",0,0;
    end;


    Если арена отключена, то все равно варпнет

  5. Предыдущий пункт - почему объявление на карте guild_vs1, а не 2?
  6. Разные mes для sex 0/1

Изменено пользователем botka4aet
Ссылка на комментарий
Поделиться на другие сайты

  1. здохнуть->сдохнуть
  2. Выберите, пожалуйста, одну из арен
  3. set .@guild, getcharid(2); - зачем? Может вместо ника в объявлении ввести "зашел член гильдии такой-то"
  4. case 5:
    if(getmapusers("guild_vs2.gat") >= 100 ) break;
    if(.guild_arena>0){
    set .@guild, getcharid(2);
    if(.@guild<1){ mes "^0000FFВы не в гильдии!!!^000000";close;}}
    if(.announce>0) { mapannounce "guild_vs1",""+strcharinfo(0)+" вошел на GvG Арену",0;}
    warp "guild_vs2",0,0;
    end;


    Если арена отключена, то все равно варпнет

  5. Предыдущий пункт - почему объявление на карте guild_vs1, а не 2?
  6. Разные mes для sex 0/1

        if(getmapusers("guild_vs2.gat") >= 100 ) break;
if(.guild_arena>0){
set .@guild, getcharid(2);
if(.@guild<1){ mes "^0000FFВы не в гильдии!!!^000000";close;}}
if(.announce>0) { mapannounce "guild_vs2",""+strcharinfo(0)+" вошел на GvG Арену",0;}
warp "guild_vs2",0,0;
end;

Помогите реализовать

[*]set .@guild, getcharid(2); - зачем? Может вместо ника в объявлении ввести "зашел член гильдии такой-то"

[*]Разные mes для sex 0/1

И как тогда избавится от set .guild_arena,1; //1 - арена гильди включена. 0 - арена гильдий выключена.

?

Ссылка на комментарий
Поделиться на другие сайты

Взял части с моей арены, тогда уже поставь копирайты?

Народ хватит собирать из трех скриптов один который будет хуже итак.

Научитесь писать свое. Если вы будете собирать один скрипт из пяти вы так ничего толком и не научитесь.Учитесь сами, если не получается то всегда можно выложить ошибку сюда и мы поможем со всем справится.

Спасибо за понимание :3

  • Upvote 2
Ссылка на комментарий
Поделиться на другие сайты

set .@guild, getcharid(2); - зачем? Может вместо ника в объявлении ввести "зашел член гильдии такой-то"

if(.announce>0) { mapannounce "guild_vs2","Игрок из "+getguildname(.@guild)+" вошел на GvG Арену",0;}

Разные mes для sex 0/1

Два разных нпц

if(sex)){

....

} else {

}

 if(getmapusers("guild_vs2.gat") >= 100 ) break;
if(.guild_arena>0){
set .@guild, getcharid(2);
- if(.@guild<1){ mes "^0000FFВы не в гильдии!!!^000000";close;}}
+ if(.@guild<1){ mes "^0000FFВы не в гильдии!!!^000000";close;}
if(.announce>0) { mapannounce "guild_vs1",""+strcharinfo(0)+" вошел на GvG Арену",0;}
warp "guild_vs2",0,0;
+ }
end;

Изменено пользователем botka4aet
Ссылка на комментарий
Поделиться на другие сайты

set .@guild, getcharid(2); - зачем? Может вместо ника в объявлении ввести "зашел член гильдии такой-то"

if(.announce>0) { mapannounce "guild_vs2","Игрок из "+getguildname(.@guild)+" вошел на GvG Арену",0;}

Разные mes для sex 0/1

Два разных нпц

if(sex)){

....

} else {

}

 if(getmapusers("guild_vs2.gat") >= 100 ) break;
if(.guild_arena>0){
set .@guild, getcharid(2);
- if(.@guild<1){ mes "^0000FFВы не в гильдии!!!^000000";close;}}
+ if(.@guild<1){ mes "^0000FFВы не в гильдии!!!^000000";close;}
if(.announce>0) { mapannounce "guild_vs1",""+strcharinfo(0)+" вошел на GvG Арену",0;}
warp "guild_vs2",0,0;
+ }
end;

как сейчас?
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...
Яндекс.Метрика