Jump to content

Recommended Posts

Posted

Доброе время суток, уважаемые форумчане.

У меня тут вопрос возник.

А как сделать так, чтобы после разговора с НПС он исчезал через, допустим, минуту?

prt_fild08,54,59,4 script Спасенный маг::norm_mage 937,{
mes "^00aa00[Спасенный маг]^000000";
mes "Наконец то я свободен!";
close2;
//помогите тут таймер правильно сделать
}

Наглядный пример. Подходишь к НПС. Говоришь с ним. Потом нажимаешь close, а потом через минуту он hideonnpc "norm_mage";

Вот как это правильно реализовать?)

Posted (edited)
prt_fild08,54,59,4 script Спасенный маг::norm_mage 937,{
mes "^00aa00[Спасенный маг]^000000","Наконец то я свободен!";
close2;
initnpctimer;
end;

OnTimer60000:
hideonnpc "norm_mage;
end;
}

Edited by Lilith
  • Upvote 1
Posted

Госпади, гигантское спасибо!

Подошел вариант:

close2;
sleep2 60000;
hideonnpc "ice_mage3";
end;

Но тут еще один вопрос. Я не знаю даже как объяснить стобы было наиболее понятно.

Возможно ли реализовать, чтобы, первый игрок, подойдя к НПС и запустив sleep2 присваивал глобальную переменную и другие игроки получали только сообщение "Прости, бро, я скоро исчезну".

Наглядно я вижу это как то так:

prt_fild08,54,59,4 script Mage::mage2 937,{
if (bubabuba == 1) goto label;
mes "^00aa00[Mage]^000000";
mes "Я свободен!";
set bubabuba,1;
close2;
sleep2 60000;
hideonnpc "ice_mage3";
end;
label:
mes "Сорри, бро, я скоро исчезну.";
close;
}

Но я не знаю, как сделать настолько глобальную переменную, которую присваивает первый игрок, действовала и на всех других игроков пока НПС не исчезнет.

Posted

prt_fild08,54,59,4 script Mage::mage2 937,{
if (.bubabuba == 1) goto label;
mes "^00aa00[Mage]^000000";
mes "Я свободен!";
set .bubabuba,1;
close2;
sleep2 60000;
hideonnpc "ice_mage3";
end;
label:
mes "Сорри, бро, я скоро исчезну.";
close;
}

префикс . указывает на переменную НИПа, зачем же глобальные?

Posted (edited)

Аааа, вот оно как. Спасибо большое =)

Последний вопрос :D

Как сделать чтобы пока один человек разговаривает с НПС другой игрок не могу с этим НПС разговаривать? :D

prt_fild08,54,59,4 script Mage::mage2 937,{
if(.speak == 1) goto sorry;
set .name,strcharinfo(0);
set .speak,1;
mes "^00aa00[Mage]^000000";
mes "Я свободен!";
set .speak,0;
close;
sorry:
mes "";
mes "Этот НПС занят разговором с "+.name+".";
close;
}

Оно?)

Edited by Sparrow
Posted

Думаю, правильнее будет так:

prt_fild08,54,59,4 script Mage::mage2 937,{
if(.speak == 1) goto sorry;
set .name,strcharinfo(0);
set .speak,1;
mes "^00aa00[Mage]^000000";
mes "Я свободен!";
close2;
set .speak,0;
sorry:
mes "";
mes "Этот НПС занят разговором с "+.name+".";
close;
}

Пока диалог с НИПом открыт у одного персонажа, другие не смогут разговаривать с ним.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...