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

xcoms

Продвинутый пользователь
  • Постов

    51
  • Зарегистрирован

  • Посещение

  • Победитель дней

    3

Сообщения, опубликованные xcoms

  1. Ну а по ошибке не видно что луа файл ругаеться !

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

    кстати посмотри . будет очень очень полезно для создание ехешника! если будут вопросы задавай в личку ! http://www.youtube.com/watch?feature=player_embedded&v=CtDRZki3Hpo

    ну а если уж будет полная лень что то делать .. дам ехешник с луа и луб файлами и сетапом без глюков!))

  2. Решил заняться Event Managerом и возникло несколько вопросов...

    1.Как реализировать Гмом замену времени старта эвента ...

    типа

    if(getgmlevel() < 60) end;

    дальше ГМ меню эвентов ...

    switch(select("Угадай монстра","Ловец порингов) ")) или через команду меня без разницы...

    выбираешь например Эвент угадай монстра а в нем например стартовать эвент и изменить время... *(вот как реализировать замену времени?)

    2.Как реализировать что бы например в 15:00 менагер при нажатии на него автоматически варпал на квест....

  3. Я так же думал что что то с сорцами но в других скриптах как не печально онклок рабоает!

    сорцы npc.c не редактированы...


    - script announce_rfyl -1,{

    OnClock2030:
    announce "Эвент 'Убеги от монстра' начнётся через 3 минуты!",0;
    killmonsterall "quiz_01";
    sleep 50000;
    announce "В Пронтере появился НПС 'Убеги от монстра'!",0;
    enablenpc "Убеги от монстра";
    sleep 10000;
    announce "Эвент 'РФУЛ' начнётся через 2 минуты!",0;
    sleep 60000;
    announce "Эвент 'РФУЛ' начнётся через 1 минуту!",0;
    sleep 30000;
    mapannounce "quiz_01","Через 30 секунд будет запущен монстр!",0;
    sleep 25000;
    announce "Эвент 'РФУЛ' начнётся через -5-",0;
    sleep 1000;
    announce "Эвент 'РФУЛ' начнётся через -4-",0;
    sleep 1000;
    announce "Эвент 'РФУЛ' начнётся через -3-",0;
    sleep 1000;
    announce "Эвент 'РФУЛ' начнётся через -2-",0;
    sleep 1000;
    announce "Эвент 'РФУЛ' начнется через -1-",0;
    sleep 1000;
    announce "Эвент 'Убеги от монстра' начался, пусть победит сильнейший!",0,0x00FF00;
    monster "quiz_01",42,369,"Убийца",1640,1;
    disablenpc "Убеги от монстра";
    initnpctimer;
    end;
    OnTimer5000: // Каждые 5 секунд проверка на количество игроков + аннонс.
    if ( getmapusers("quiz_01") == 0 )
    {
    killmonsterall "quiz_01"; // Если всех убили - эвент заканчивается.
    announce "Эвент 'РФУЛ' закончился, так как игроков на Эвенте нет.",0;
    disablenpc "Киса";
    stopnpctimer;
    end;
    }
    else if ( getmapusers("quiz_01") > 1 )
    {
    mapannounce "quiz_01",getmapusers("quiz_01") +" игрока(ов) всё ещё находятся на Эвенте.",0,0x00FF00; // Если 2+ игроков на эвенте - аннонс.
    initnpctimer;
    end;
    }
    initnpctimer;
    end;
    //---Выкидывание игрока с Эвента после смерти и проверка на победителя.---//
    OnPCDieEvent:
    getmapxy .@maprfyl$,.@xrfyl,.@yrfyl,0;
    if ( .@maprfyl$ == "quiz_01") {
    sleep2 1;
    warp "prontera",156,223;
    atcommand "@alive "+ strcharinfo(0);
    dispbottom "К сожалению, Вы проиграли...";
    }
    sleep2 1000;
    if ( .@maprfyl$ == "quiz_01" && getmapusers("quiz_01") == 1 ) {
    killmonsterall "quiz_01";
    mapannounce "quiz_01","Поздравляю, Вы выиграли, подойдите пожалуйста к Кисе.",0;
    enablenpc "Киса";
    stopnpctimer;
    end;
    }
    end;
    }

    //---Выигрыш.---//
    quiz_01,42,369,3 script Киса 876,{
    if (sex == 1) { // Мальчик.
    announce "В 'РФУЛе' победил "+ strcharinfo(0) +"! Поздравляем его!",0;
    }
    else { // Остальные (девочка).
    announce "В 'РФУЛе' победила "+ strcharinfo(0) +"! Поздравляем её!",0;
    };
    getitem 7227,1; // Можно поставить свой приз.
    warp "prontera",156,223;
    sleep2 250;
    disablenpc "Киса";
    end;
    }
    //---Регистрация на Эвент.---//
    prontera,146,164,3 script Убеги от монстра 736,{
    mes "[^0000FFУбеги от монстра^000000]";
    mes "Вы хотите попасть на Эвент '^FF0000Убеги от монстра^000000'?";
    next;
    switch(select("Да","Нет")) {
    case 1:
    if (checkriding()) { // Проверка на Пеко-Пеко.
    mes "[^0000FFУбеги от монстра^000000]";
    mes "Пожалуйста, снемите Пеко Пеко.";
    close;
    }
    sc_end SC_ALL;
    percentheal 100,100;
    warp "quiz_01",42,369;
    end;
    break;
    case 2:
    mes "[^0000FFУбеги от монстра^000000]";
    mes "Хорошо, приходите, когда захотите.";
    close;
    break;
    }
    OnInit: // При запуске сервера убераем НПС.
    disablenpc "Убеги от монстра";
    disablenpc "Киса";
    end;
    }
    //---МапФлаги.---//
    quiz_01 mapflag pvp off
    quiz_01 mapflag noteleport
    quiz_01 mapflag nosave SavePoint
    quiz_01 mapflag nowarp
    quiz_01 mapflag noreturn
    quiz_01 mapflag nomemo
    quiz_01 mapflag nowarpto
    quiz_01 mapflag noskill
    quiz_01 mapflag pvp noparty
    quiz_01 mapflag restricted 5 // Не забывайте добавить зелья, которые нельзя кушать и

  4. есть такой скрипт ... ругаеться на OnClock2030:

    [Error]: npc_parsesrcfile Unkown syntax in file (/npc_file) line 6 Stoping

    w1=OnClock2030:

    кто подскажет в чем проблема ?



    - script announce_rfyl -1,{


    OnClock2030:
    announce "Эвент 'Убеги от монстра' начнётся через 3 минуты!",0;
    killmonsterall "quiz_01";
    sleep 50000;
    announce "В Пронтере появился НПС 'Убеги от монстра'!",0;
    enablenpc "Убеги от монстра";
    sleep 10000;
    announce "Эвент 'РФУЛ' начнётся через 2 минуты!",0;
    sleep 60000;
    announce "Эвент 'РФУЛ' начнётся через 1 минуту!",0;
    sleep 30000;
    mapannounce "quiz_01","Через 30 секунд будет запущен монстр!",0;
    sleep 25000;
    announce "Эвент 'РФУЛ' начнётся через -5-",0;
    sleep 1000;
    announce "Эвент 'РФУЛ' начнётся через -4-",0;
    sleep 1000;
    announce "Эвент 'РФУЛ' начнётся через -3-",0;
    sleep 1000;
    announce "Эвент 'РФУЛ' начнётся через -2-",0;
    sleep 1000;
    announce "Эвент 'РФУЛ' начнется через -1-",0;
    sleep 1000;
    announce "Эвент 'Убеги от монстра' начался, пусть победит сильнейший!",0,0x00FF00;
    monster "quiz_01",42,369,"Убийца",1640,1;
    disablenpc "Убеги от монстра";
    initnpctimer;
    end;

  5. А что если периодически отправлять 2 пакета на изменение % здоровья с такой задержкой чтобы игрок не заметил, а крутящийся в цикле жор успел это заметить и сожрал ягу. И если он сожрал ягу тогда зобонеть?

    а как предвидить что в этот момент когда пошли пакеты человек успел ручками поднять ХП? и тут бан влител ..

  6. Вот нарыл такой скриптик с функцией... он и реализирует твой задум... если не то или не так понял прошу сильно не пинать (


    // callfunc "Check_IP","<map_name>";
    function script Check_IP {
    // Get list of accounts with attached character's IP address.
    set .@size, query_sql("SELECT `account_id` FROM `login` WHERE `last_ip` = '"+getcharip()+"'",.@aid);
    // Passed check if only the attached player is returned.
    if (.@size < 2) return;
    // Check all online characters using the IP address if they're on the given map.
    set .@self, getcharid(3);
    for(set .@i,0; .@i<.@size; set .@i,.@i+1) {
    if (attachrid(.@aid[.@i])) {
    if (strcharinfo(3) == getarg(0)) {
    set .@name$, strcharinfo(0);
    attachrid(.@self);
    mes "Character "+.@name$+" is already logged into this event with your IP.";
    close;
    }
    }
    }
    attachrid(.@self);
    // Passed check.
    return;
    }

    Тут немного по другому. проверка двох одинаковых ИП на карте..если уже есть такой ИП .. . второй варпует в сейпоинт!


    - script Check_IP -1,{
    OnInit:
    setmapflag "map_name", mf_loadevent;
    end;
    // Когда игрок заходит на карту срабатывет Мапфлаг.
    OnPCLoadMapEvent:
    // На какрй карте Юзать".
    if (strcharinfo(3) != "mapname") end;
    // Получение листа ИП адресов.
    set .@size, query_sql("SELECT `account_id` FROM `login` WHERE `last_ip` = '"+getcharip()+"'",.@aid);
    // Проверка.
    if (.@size < 2) end;
    //Проверка на онлайн.
    set .@self, getcharid(3);
    for(set .@i,0; .@i<.@size; set .@i,.@i+1) {
    if (.@aid[.@i] == .@self)
    continue;
    if (attachrid(.@aid[.@i])) {
    if (compare(strcharinfo(3),"map_")) {
    set .@name$, strcharinfo(0);
    attachrid(.@self);
    message strcharinfo(0),"Чар "+.@name$+" , с Вашего IP уже кто то проходит Квест.";
    sleep2 2000;
    warp "SavePoint",0,0;
    end;
    }
    }
    }
    // Конец.
    end;
    }

    • Upvote 1
  7. Почитайте внимательно описание переменных в доках и сами у себя найдёте ошибки doc\script_commands

    Вообще если честно я не понимаю зачем их использовать здесь, ведь можно и без них же обойтись...

    для того чтобы потом прописать больше уровней и быстро поменять подарок ....

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

  8. Друзя есть такой скриптик который за взятие 10,20,30,40 уровня дает подарок


    - script Levelupbox -1,{
    OnPCBaseLvUpEvent:
    if(BaseLevel == 10) {
    getitem 501,1;
    dispbottom "Поздравляю "+strcharinfo(0)+" ваш базовый уровень теперь 10, Вам Бонус";
    end;
    }
    if(BaseLevel == 20) {
    getitem 501,1;
    dispbottom "Поздравляю "+strcharinfo(0)+" ваш базовый уровень теперь 20 , Вам Бонус";
    end;
    }
    }
    и.тд

    сам скрипт дает подарок чару только тогда когда он берет именно 10 , 20 лвл ..как сделать не прописывая на каждый уровень подарок чтобы чар взяв например не имено 10 а перескочив и взяв 11 лвл все равно получил подарок , но подарок получил только раз в диапазоне например 10-19 лвл а уже за 20 новый подарок...

    так же вопрос два ... что бы не прописывать каждый уровень назначаю .@item$,501; и..та... почему при взятие лвл такая переменая не работает и не дает вещь... если что то втупил сильно не бейте ...


    - script Levelupbox -1,{
    OnPCBaseLvUpEvent:

    set .@item$,501;
    set .@item2$,501;

    if(BaseLevel == 10) {
    getitem .@item$,1;
    dispbottom "Поздравляю "+strcharinfo(0)+" ваш базовый уровень теперь 10, Вам Бонус";
    end;
    }
    if(BaseLevel == 20) {
    getitem .@item2$,1;
    dispbottom "Поздравляю "+strcharinfo(0)+" ваш базовый уровень теперь 20 , Вам Бонус";
    end;
    }
    }
    и.тд

    всем спасибо

    • Downvote 1
  9. тему можете удалить! так как разобралься с крашем... хоть и не понял в чем была проблема.. так как добавил кастомную команду в конце всех команд тогда был краш.. когда переместил чуть выше при джобе крашит перестало ... мистика ))) так что модераторов прошу удалить тему ! и извиняюсь!

  10. Спасибо за помощь с паролями разобрался и все понял =).

    Но вот кодировка... русские буквы не видно unsure.png

    если хочешь чтобы отображались русские буквы так напишы их в кодировке UTF-8 , если русские буквы идут с БД так сделай БД в UTF-8 .. да и делов !

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