Автор: KensyWhim: Дата: 12.27.2009
Где я допустил ошибку, понять не могу... :huh:
prontera,146,165,6 script Max LvL Rank 718,{
mes "[Constantin]";
mes "Hello, I'm Constantin, I'm the person";
mes "Who have access to all the Rune Midgard Registries";
mes "Are you interested in something ?";
if(select("I want see the Top Level Ranking: No, Nothing.")==1) {
mes "This rank shows the first 10 people who reached the";
mes "Maximum Level.";
next;
mes "[Constantin]";
for(set @i, 0; $Rank$[@i]; set @i, @i + 1) mes @i+"є"+$Rank$[@i]."; }
else {
mes "Ok, no problems.";
}
close;
}
Unexpected newline at string.
75 : mes "This rank shows the first 10 people who reached the
";
76 : mes "Maximum Level.";
77 : next;
78 : mes "[Constantin]";
79 : for(set @i, 0; $Rank$[@i]; set @i, @i + 1) mes @i+"║"+$R
ank$[@i]."; }
* 80 : else {
81 : mes "Ok, no problems.";
82 : }
83 :
84 : close;
85 : }
Автор: KensyWhim: Дата: 12.27.2009
Попробывал сейчас твоим вариантом, всёравно почему то мап ругается.
Unexpected newline at string.
76 : mes "This rank shows the first 10 people who reached the
";
77 : mes "Maximum Level.";
78 : next;
79 : mes "[Constantin]";
80 : for(set @i, 0; $Rank$[@i]; set @i, @i + 1) mes @i+"║"+$R
ank$[@i].";
* 81 : close;
82 : Case 2:
83 : mes "Ok, no problems.";
84 : close;
85 : }
Автор: 879546: Дата: 12.27.2009
Предположу, что тогда ему чем-то не нравится
for(set @i, 0; $Rank$[@i]; set @i, @i + 1) mes @i+"║"+$Rank$[@i].";
Автор: KensyWhim: Дата: 12.27.2009
Цитата 879546;17220]Предположу, что тогда ему чем-то не нравится
for(set @i, 0; $Rank$[@i:
; set @i, @i + 1) mes @i+"║"+$Rank$[@i].";
/* ___ ___ ___ ___ ___ ___ ___ ___ ___ ___ ___
/\ \ /\ \ /\ \ /\__\ /\ \ /\ \ /\ \ /\ \ /\__\ /\__\ /\ \
\:\ \ /::\ \ /::\ \ /:| _|_ /::\ \ /::\ \ /::\ \ /::\ \ /:| _|_ /:/ _/_ /::\ \
/::\__\ /::\:\__\ /:/\:\__\ /::|/\__\ /:/\:\__\ /:/\:\__\ /::\:\__\ /:/\:\__\ /::|/\__\ /:/_/\__\ /\:\:\__\
/:/\/__/ \:\:\/ / \:\ \/__/ \/|::/ / \:\/:/ / \:\ \/__/ \;:::/ / \:\/:/ / \/|::/ / \:\/:/ / \:\:\/__/
\/__/ \:\/ / \:\__\ |:/ / \::/ / \:\__\ |:\/__/ \::/ / |:/ / \::/ / \::/ /
\/__/ \/__/ \/__/ \/__/ \/__/ \|__| \/__/ \/__/ \/__/ \/__/
*----------------------------------------- eAthena Script ---------------------------------------------*
* Maximum Level Announce *
*----------------------------------------------- By: --------------------------------------------------*
* TecnoCronus *
*----------------------------------------- Current Version: -------------------------------------------*
* 1.0 *
*----------------------------------------- Compatible With: -------------------------------------------*
* eAthena *
*------------------------------------------- Description: ---------------------------------------------*
* A NPC that announce the 10th firsts persons who got the maximum level *
*----------------------------------------- Additional Comments: ---------------------------------------*
* It give a item as reward, the item ids of reward are keeped at $@Glob_Array_Item array *
* The index of array will be get randomly. *
*-------------------------------------------- Changelog -----------------------------------------------*
*- http://trac.xp-dev.com/TC_Scripts/log/scripts/EN/MaxLvLAnnouncer.txt *
*------------------------------------------------------------------------------------------------------*/
- script MaxLvLAn -1,{
end;
OnPCBaseLvUpEvent:
if(.numMaxLevel == 10)
disablenpc "MaxLvLAn";
else if (BaseLevel==.MaxLvl) {
// Check if the player for some reason, reached to Maximum level again
if(Rew > 0) end;
// Keep the player name on array
setarray $Rank$[.numMaxLevel], strcharinfo(0);
announce strcharinfo(0)+", you are the "+.places$[.numMaxLevel]+" person to reach the level "+.MaxLvl+", you will receive a reward",0;
//give prize
set @Rnd_Item, rand(0,(getarraysize(".Global_Array_Item")-1));
getitem .Global_Array_Item[@Rnd_Item],1;
// set this variable, to don't take rewards again
set Rew, 1;
// Keep the last array index
set .numMaxLevel,.numMaxLevel+1;
if(.numMaxLevel == 9) // Should be 9 now because the array index start in 0 (Thanks to ToastOfDoom)
disablenpc "MaxLvLAn";
}
end;
OnInit:
// Set here the maximum level of your server
set .MaxLvl, 99;
// Array with the item id rewards
setarray .Global_Array_Item[0],504,505;
//array lookup for place names
setarray .places$[0], "First", "Second", "Third", "Fourth", "Fifth", "Sixth", "Seventh", "Eighth", "Ninth", "Tenth";
}
prontera,146,165,6 script MaxLvLRank 718,{
mes "[Constantin]";
mes "Hello, I'm Constantin, I'm the person";
mes "Who have access to all the Rune Midgard Registries";
mes "Are you interested in something ?";
if(select("I want see the Top Level Ranking: No, Nothing.")==1) {
mes "This rank shows the first 10 people who reached the";
mes "Maximum Level.";
next;
mes "[Constantin]";
for(set @i, 0; $Rank$[@i]; set @i, @i + 1) mes @i+"є"+$Rank$[@i]".";
} else {
mes "Ok, no problems.";
}
close;
}
Автор: nomn: Дата: 12.27.2009
вфф, криво реализованный нпс. что он должен делать?
Автор: Мяфк: Дата: 12.27.2009
Написано же:
* A NPC that announce the 10th firsts persons who got the maximum level
Автор: Хитрюга Джэк: Дата: 12.27.2009
)) пишет о первых 10ти людях достигших максимального уровня.
Автор: KensyWhim: Дата: 12.27.2009
Цитата Raff;17222:
вфф, криво реализованный нпс. что он должен делать?
Автор: dimjke: Дата: 12.27.2009
- script MaxLvLAn -1,{
end;
OnInit:
OnPCBaseLvUpEvent:
setarray $priz[0],504,505,506,507,508,509,510,511,512,513;
setarray $places1[0], "Первым", "Вторым", "Третьим", "Четвертым", "Пятым", "Шестым", "Седьмым", "Восьмым", "Девятым", "Десятым";
setarray $places2[0],"Первой", "Второй", "Третьей", "Четвертой", "Пятой", "Шестой", "Седьмой", "Восьмой", "Девятой", "Десятой";
set $lvl,$lvl+1;
set $win,$win+1;
set $place,$place+1;
if ($lvl == 10){end;}
if ($place > 10){end;}
if ($win > 10){end;}
if (sex == 1){
announce ""+ strcharinfo(0)+" взял лампу "+$places1[$place]+"!";
getitem $priz[$win],1;
}else{
announce ""+ strcharinfo(0)+" взяла лампу "+$places2[$place]+"!";
getitem $priz[$win],1;
end;
}}
Автор: KensyWhim: Дата: 12.27.2009
Цитата dimjke;17237:
Попробуй так.
Автор: dimjke: Дата: 12.27.2009
Убери анонсы и будет работать. Только что проверил..
Автор: 879546: Дата: 12.27.2009
Цитата KensyWhim;17226:
Объявляет на весь мир "Грац с макс лвлом бла бла бла"^_^, и в пронте стоит непись, что то типа Ранг, топ лвлов.
- script OnPCBaseLvUpEvent -1,{
if(BaseLevel > 98)
announce "Поздравляем "+strcharinfo(0)+" с получением 99 уровня!!!",8;
else
end;
}
Автор: KensyWhim: Дата: 12.27.2009
Цитата 879546;17245:
Тут уж велосипед точно не нужно изобретать- script OnPCBaseLvUpEvent -1,{
if(BaseLevel > 98)
announce "Поздравляем "+strcharinfo(0)+" с получением 99 уровня!!!",8;
else
end;
}
Но с рейтингом - смотря как тебе нужно. Первые 10 человек, достигшие макс. лвл, или как?
Автор: nomn: Дата: 12.27.2009
можно переписать, как будет время может займусь.
Автор: dimjke: Дата: 12.27.2009
Возьмите мой код и допишите, там делов на 15 минут не больше..=)
Автор: dimjke: Дата: 12.27.2009
for(set @i, 0; @i < getarraysize($Rank$); set @i, @i+1){mes @i+1+"."+$Rank$[@i]+".";close;}