Назад

Вопрос

Автор: JaneAir: Дата: 01.17.2010

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

Автор: JaneAir: Дата: 01.18.2010

эмм...это типо нпц?

Можно прмером? я в скриптах почти непонимаю...все с ошибками=\

Автор: Sanasol: Дата: 01.18.2010

Я тебе почти весь код выложил. Посмотри примеры скриптов. Найди где говорит когда кто--то апнулся до макс уровня. И т.д. И по кусочкам. =)

Автор: [OneLife]: Дата: 01.18.2010

Вот ;)


- script bonus_prize -1,{
end;

OnPCBaseLvUpEvent:
if (BaseLevel == 99) {
set item, rand(5001,5811);
getitem item,1;
end;
}
}

99 - это уровень при котором игрок получит шмотку.
Я так понял, тут только шапки прописаны? Если надо, что то другое тогда меняй "5001,5811" на свои числа.

Автор: Sanasol: Дата: 01.18.2010

Да только шапки. А то может цифра выпасть с тупым шмотом. там же половина за комментировано. и еще половина нету в дате. А лучше прописывать еще и while т.е. исключать некоторые значения

Автор: 879546: Дата: 01.18.2010

А можно так. Сам выбираешь 20 шмоток(к примеру) и


//___________Script by Gremlin____________ //
//_По всем вопросам можно писать на мыло__ //
//[email protected]____________//
//_____________Good Luck!_______________//
//______________Have Fun!_______________//
- script Bonus Item -1,{
set @id1$,ИД первой шмотки; //Укажи сам ;)
set @id2$,ИД второй шмотки;
set @id3$,ИД третьей шмотки;
....
set @id19$,ИД девятнадцатой шмотки;
set @id20$,ИД двадцатой шмотки;

OnPCBaseLvUpEvent:
if (BaseLevel == 99) {
set $id, rand(1,20);
if($id == 1){
set $id,@id1$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}

if($id == 2){
set $id,@id2$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 3){
set $id,@id3$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}

if($id == 4){
set $id,@id4$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 5){
set $id,@id5$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 6){
set $id,@id6$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 7){
set $id,@id7$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 8){
set $id,@id8$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 9){
set $id,@id9$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 10){
set $id,@id10$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 11){
set $id,@id11$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 12){
set $id,@id12$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 13){
set $id,@id13$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 14){
set $id,@id14$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 15){
set $id,@id15$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 16){
set $id,@id16$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 17){
set $id,@id17$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 18){
set $id,@id1$;
getitem $id,18;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 19){
set $id,@id19$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 20){
set $id,@id20$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
}
end;
}
}

У себя не тестил, так что если будут ошибки - напиши плз))
З.Ы. Мой первый мало-мальски серьёзный скрипт, написанный с нуля

Автор: JaneAir: Дата: 01.18.2010

хм...скрипт работает без ошибок... изменил везде ид шмоток, вот пример...но шмотку не дает, пишет Поздровляем с 254лвл , вы получаетеnull.

	if (BaseLevel == 254) {  
set $id, rand(1,20);
if($id == 1){
getitem $id,20000;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

Автор: [OneLife]: Дата: 01.18.2010

ид шмотки надо не тут менять, а вот тут:


set @id1$,ИД первой шмотки; //Укажи сам ;)
set @id2$,ИД второй шмотки;
set @id3$,ИД третьей шмотки;
....
set @id19$,ИД девятнадцатой шмотки;
set @id20$,ИД двадцатой шмотки;


А то, что ты поставил "20000" это тебе дадут 20.000 штук этой шмотки

Автор: 879546: Дата: 01.18.2010

Цитата JaneAir;18846:
хм...скрипт работает без ошибок... изменил везде ид шмоток, вот пример...но шмотку не дает, пишет Поздровляем с 254лвл , вы получаетеnull.

	if (BaseLevel == 254) {  
set $id, rand(1,20);
if($id == 1){
getitem $id,20000;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

там ошибка была, исправил

Автор: 879546: Дата: 01.18.2010

Update: Косметическая поправочка ввиде пробела перед названием шмотки и цвета надписи.

Автор: JaneAir: Дата: 01.18.2010

//___________Script by Gremlin____________//
//_По всем вопросам можно писать на мыло__//
//[email protected]____________//
//_____________Good Luck!_______________//
//______________Have Fun!_______________//
- script Bonus Item -1,{
set @i1$,20000; //Укажи сам ;)
set @id2$,20001;
set @id3$,20002;
set @id4$,20003;
set @id5$,20004;
set @id6$,20005;
set @id7$,20006;
set @id8$,20007;
set @id9$,20008;
set @id10$,20009;
set @id11$,20010;
set @id12$,20011;
set @id13$,20012;
set @id14$,20013;
set @id15$,20014;
set @id16$,20015;
set @id17$,20016;
set @id18$,20017;
set @id19$,20018;
set @id20$,20019;

OnPCBaseLvUpEvent:
if (BaseLevel == 254) {
set $id, rand(1,20);
if($id == 1){
getitem $id,20000;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

if($id == 2){
getitem $id,20001;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 3){
getitem $id,20002;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

if($id == 4){
getitem $id,20004;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 5){
getitem $id,20005;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 6){
getitem $id,20006;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 7){
getitem $id,20007;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 8){
getitem $id,20008;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 9){
getitem $id,20009;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 10){
getitem $id,20010;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 11){
getitem $id,20011;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 12){
getitem $id,20012;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 13){
getitem $id,20012;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 14){
getitem $id,20013;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 15){
getitem $id,20014;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 16){
getitem $id,20015;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 17){
getitem $id,20016;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 18){
getitem $id,20017;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 19){
getitem $id,20018;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 20){
getitem $id,20019;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

end;
}
}


Пробелы убрал , расставил таб...всеравно =\

Автор: [OneLife]: Дата: 01.18.2010

Елки палки!! Я же написал!!!


getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

Или ты хочешь, что бы персонажу дали 20.000 штук этой вещи?!


set @id1$,20000;


И я так думаю и в скрипте везде будет тогда:

getitem $id1,1; // Там где красное по возрастанию идет думаю разберешься

Автор: 879546: Дата: 01.18.2010

Цитата JaneAir;18853:
//___________Script by Gremlin____________//
//_По всем вопросам можно писать на мыло__//
//[email protected]____________//
//_____________Good Luck!_______________//
//______________Have Fun!_______________//
- script Bonus Item -1,{
set @i1$,20000; //Укажи сам ;)
set @id2$,20001;
set @id3$,20002;
set @id4$,20003;
set @id5$,20004;
set @id6$,20005;
set @id7$,20006;
set @id8$,20007;
set @id9$,20008;
set @id10$,20009;
set @id11$,20010;
set @id12$,20011;
set @id13$,20012;
set @id14$,20013;
set @id15$,20014;
set @id16$,20015;
set @id17$,20016;
set @id18$,20017;
set @id19$,20018;
set @id20$,20019;

OnPCBaseLvUpEvent:
if (BaseLevel == 254) {
set $id, rand(1,20);
if($id == 1){
getitem $id,20000;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

if($id == 2){
getitem $id,20001;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 3){
getitem $id,20002;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

if($id == 4){
getitem $id,20004;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 5){
getitem $id,20005;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 6){
getitem $id,20006;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 7){
getitem $id,20007;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 8){
getitem $id,20008;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 9){
getitem $id,20009;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 10){
getitem $id,20010;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 11){
getitem $id,20011;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 12){
getitem $id,20012;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 13){
getitem $id,20012;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 14){
getitem $id,20013;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 15){
getitem $id,20014;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 16){
getitem $id,20015;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 17){
getitem $id,20016;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 18){
getitem $id,20017;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 19){
getitem $id,20018;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}
if($id == 20){
getitem $id,20019;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете"+ getitemname($id) +". Удачи!";
close;
}

end;
}
}


Пробелы убрал , расставил таб...всеравно =\


Написал же, ошибка была! Вот что надо добавить:

if($id == 1){
set $id,@id1$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}

if($id == 2){
set $id,@id2$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}


Вобщем, как я понял тебе нужно под 254 лвл и иды 20000-20019, тогда будет выглядеть так:

//___________Script by Gremlin____________//
//_По всем вопросам можно писать на мыло__//
//[email protected]____________//
//_____________Good Luck!_______________//
//______________Have Fun!_______________//
- script Bonus Item -1,{
set @i1$,20000; //Укажи сам ;)
set @id2$,20001;
set @id3$,20002;
set @id4$,20003;
set @id5$,20004;
set @id6$,20005;
set @id7$,20006;
set @id8$,20007;
set @id9$,20008;
set @id10$,20009;
set @id11$,20010;
set @id12$,20011;
set @id13$,20012;
set @id14$,20013;
set @id15$,20014;
set @id16$,20015;
set @id17$,20016;
set @id18$,20017;
set @id19$,20018;
set @id20$,20019;

OnPCBaseLvUpEvent:
if (BaseLevel == 254) {
set $id, rand(1,20);
if($id == 1){
set $id,@id1$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}

if($id == 2){
set $id,@id2$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 3){
set $id,@id3$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}

if($id == 4){
set $id,@id4$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 5){
set $id,@id5$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 6){
set $id,@id6$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 7){
set $id,@id7$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 8){
set $id,@id8$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 9){
set $id,@id9$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 10){
set $id,@id10$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 11){
set $id,@id11$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 12){
set $id,@id12$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 13){
set $id,@id13$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 14){
set $id,@id14$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 15){
set $id,@id15$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 16){
set $id,@id16$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 17){
set $id,@id17$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 18){
set $id,@id1$;
getitem $id,18;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 19){
set $id,@id19$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
if($id == 20){
set $id,@id20$;
getitem $id,1;
mes "Поздравляем! Вы достигли масимального уровня!";
mes "Вы получаете ^FF0000"+ getitemname($id) +"^000000. Удачи!";
close;
}
}
end;
}
}

Автор: JaneAir: Дата: 01.18.2010

Спасибо , работает.
2-ю страницу неувидел..поэтому и написал как у меня .

Автор: 879546: Дата: 01.18.2010

Цитата JaneAir;18862]Спасибо , работает.
2-ю страницу неувидел..поэтому и написал как у меня .


я не отказался бы от[IMG]http://rus-ea.ru/forums/enlighten/buttons/post_thanks.gif[/IMG:
:rolleyes:...