Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
  • 0
meow

Требуется помощь скриптоделов

Доброго всем времени суток. 

 

Ребят появилась вот такая цель:

 

Надо чтобы по нажатию кнопки (например "1") у меня UID 1234567890 ломались ноги.

а по нажатию кнопки (например "2") у моей команды с UID 1111111111, 222222222, 333333333. тоже ломались ноги.

 

главное чтоб это работало только на моем сервере, и только если я нажимаю на кнопку, и чтоб батл-ай не противился и не послал меня в ВАК по самый неболуй.

 

По этим скриптам я надеюсь сделать аналоги других положительных и отрицательных плюшек. Если не получится опять же обращусь к вам на форум.

 

Зарание спасибо.

 

 

P.S: Скрипты нужны для создания эвента. 

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts






  • 0

 

MeowFunct1 = {
    if ((getPlayerUID player) in whitelevel) then 
    {
            [] spawn {
                    if(isNil "druggedbiatch")then
                    {
                        druggedbiatch = true;
                        hint "You took drugs YOLOLOLO";
                        _mytime = time;
                        while{druggedbiatch}do
                        {
                            nonapsi_ef = ppEffectCreate ["colorCorrections", 1555]; 
                            nonapsi_ef ppEffectEnable true;
                            nonapsi_ef ppEffectAdjust [1.0, 1.0, -0.03, [0.0, 0.0, 0.0, 0.0], [3.0, 5.0, 9.0, 5.0],[0.4,0.0,0.0, 0.7]];
                            nonapsi_ef ppEffectCommit 1;
                            uiSleep random(1);
                            wetdist1 = ppEffectCreate ["wetDistortion", 2006];
                            wetdist1 ppEffectAdjust [0, 8, 0.8,8,8, 0.2, 1, 0, 0, 0.08, 0.08, 0, 0, 0, 0.77];
                            wetdist1 ppEffectEnable true;
                            wetdist1 ppEffectCommit 0;
                            ppe = ppEffectCreate ["colorCorrections", 1555]; 
                            ppe ppEffectAdjust [1, 1, 0, [1.5,6,2.5,0.5], [5,3.5,5,-0.5], [-3,5,-5,-0.5]]; 
                            ppe ppEffectCommit 1;
                            ppe ppEffectEnable true; 
                            ppe2 = ppEffectCreate ["chromAberration", 1555]; 
                            ppe2 ppEffectAdjust [0.01,0.01,true];
                            ppe2 ppEffectCommit 1;
                            ppe2 ppEffectEnable true;
                            ppe3 = ppEffectCreate ["radialBlur", 1555]; 
                            ppe3 ppEffectEnable true;
                            ppe3 ppEffectAdjust [0.02,0.02,0.15,0.15];
                            ppe3 ppEffectCommit 1;
                            uiSleep random(1);
                            wetdist1 = ppEffectCreate ["wetDistortion", 2006];
                            wetdist1 ppEffectAdjust [1, 1.16, 0.32, 2.56, 0.8, 0.64, 2.64, 0, 0, 1.08, 0.08, 0, 0, 0, 1.77];
                            wetdist1 ppEffectEnable true;
                            wetdist1 ppEffectCommit 0;
                            uiSleep random(1);
                            nonapsi_ef = ppEffectCreate ["colorCorrections", 1555]; 
                            nonapsi_ef ppEffectEnable true;
                            nonapsi_ef ppEffectAdjust [1.0, 1.0, -0.02, [9.5, 1.5, 2.5, 0.2], [2.0, 7.0, 6.0, 2.0],[0.4,0.0,0.0, 0.7]];
                            nonapsi_ef ppEffectCommit 1;
                            uiSleep random(1);
                            if(_mytime + 30 < time)exitWith {};
                        };
                        ppEffectDestroy nonapsi_ef;
                        ppEffectDestroy ppe;
                        ppEffectDestroy ppe2;
                        ppEffectDestroy ppe3;
                        ppEffectDestroy wetdist1;
                        setaperture 0;
                        "dynamicBlur" ppEffectAdjust [0];
                        "dynamicBlur" ppEffectCommit 16;
                        "colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 1],  [1, 1, 1, 0.0]];
                        "colorCorrections" ppEffectCommit 0;
                    };
                };
    };
};

 

 

Но почему-то скрипт отрабатывает только один раз. :(
Edited by TheFirstNoob (see edit history)

Share this post


Link to post
Share on other sites
  • 0

как кто то писал, 90% кода уже есть в инфистаре.

Share this post


Link to post
Share on other sites
  • 0

Короче скрипт ломания ног приделали, проверку нажимающего сделали, но вот группе ноги ломать не получается. Либо не проверяется массив, либо одно из двух :)

Share this post


Link to post
Share on other sites
  • 0

как кто то писал, 90% кода уже есть в инфистаре.

Это и есть скрипт из инфистара, но он отрабатывает только один раз. :(

Share this post


Link to post
Share on other sites
  • 0

Помогите понять будет ли работать такая конструкция?

 

if (isNil "whitelevel2") then    {whitelevel2    =    0;};
whitelevel2 = ["76561198031591732","76561198039753555","76561198063588345"];


meowFunct3 = {
    if ((getPlayerUID player) in whitelevel) then {
                _unit = whitelevel2[0];
                _selection = 'legs';
                _damage = 1;
                _unit setHit[_selection,_damage];
                _unit = whitelevel2[1];
                _selection = 'legs';
                _damage = 1;
                _unit setHit[_selection,_damage];
                _unit = whitelevel2[2];
                _selection = 'legs';
                _damage = 1;
                _unit setHit[_selection,_damage];
    };
};
 

 

Edited by TheFirstNoob (see edit history)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By akklin
      Привет. 
      Я сделал несколько
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • By fedotovyasha
      в messages есть такая возможность
      <messages> <!-- This is example message for automatic server termination --> <message> <!-- no delay --> <delay>0</delay> <!-- if the value is larger than 0, then flag Repeat is enabled --> <repeat>0</repeat> <!-- if the value is larger than 0, then flag Countdown is enabled, countdown reaches zero in 10 hours --> <deadline>600</deadline> <!-- disable On connect flag --> <onConnect>0</onConnect> <!-- enable Shutdown flag --> <shutdown>1</shutdown> <!-- message itself with placeholders --> <text>Hello, #name will shutdown in #tmin minutes.</text> </message> </messages> Что лучше и эффективнее будет. Писать свой рестартер с помощью Rcon или будет достаточно messages.xml?
    • By BorizzK
      Есть класс
       
      class LogClass { private FileHandle File; void LogClass() { Print("::: [LogClass] ::: Init :::"); } void ~LogClass() { Print("::: [LogClass] ::: UnInit :::"); } void Save(string FileName, string String) { private int year, month, day, hour, minute, second; Print("::: [LogClass]: Save: " + FileName); if (!FileExist(FileName)) { File = OpenFile(FileName,FileMode.WRITE); } else { File = OpenFile(FileName, FileMode.APPEND); } if ( File == 0 ) { Print("::: [LogClass]: Can not write FileName: " + FileName); Print("::: [LogClass]: May be disk error, file write protected, file busy or FileMode.WRITE disabled (need to specify option -scrAllowFileWrite in server run parameters for enable FileMode.WRITE."); return; } FPrintln(File, DataBase_GetDate() + "," + DataBase_GetTime() + " : " + String); CloseFile(File); } void Rotate(string FileName, int FileNum) { Print("::: [LogClass]: Rotate: " + FileName); if (!FileExist(FileName)) { Print("::: [LogClass]: Rotate: FileName not exists: " + FileName); return; } else { for ( int i = FileNum; i > 0; i-- ) { Print("::: [LogClass]: Rotate: FileName: " + FileName + "." + i); if (FileExist(FileName + "." + i)) { Print("::: [LogClass]: Rotate: DeleteFile: " + FileName + "." + i); DeleteFile(FileName + "." + i); } if (FileExist(FileName + "." + (i - 1))) { Print("::: [LogClass]: Rotate: CopyFile: " + FileName + "." + (i - 1) + " => " + FileName + "." + i); CopyFile(FileName + "." + (i - 1), FileName + "." + i); } } CopyFile(FileName, FileName + ".0"); DeleteFile(FileName); } } static string DataBase_GetDate() { int year, month, day; GetYearMonthDay(year, month, day); string date = day.ToStringLen(2) + "." + month.ToStringLen(2) + "." + year.ToStringLen(2); return date; } static string DataBase_GetTime() { int hour, minute, second; GetHourMinuteSecond(hour, minute, second); string time = hour.ToStringLen(2) + ":" + minute.ToStringLen(2) + ":" + second.ToStringLen(2); return time; } } Мне нужно им пользоваться функциями из него в нескольких местах
      в PlayerBase.c в функциях в классе PlayerBase
      в init.c в функция в классе миссии
      Вопрос как?
       
      В PlayerBase.c
      #include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\_MOD\\LogClass\\LogClass.c"
      Далее в классе
      ref LogClass Log = new LogClass();
      ну и в функциях
      Log.Save{"путь-имя", данные);
       
      Но после последнего обновления 0.63.149.525
      В init.c
      #include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\_MOD\\LogClass\\LogClass.c"
      приводит к ошибке - Multiple declaration of class "LogClass"
       
      Can't compile mission init script'!
      $CurrentDir://mpmissions//dayzOffline.chernarusplus//_MOD//LogClass//LogClass.c(1): Multiple declaration of class 'LogClass'
       
      До этого обновления все было норм
      Как быть?
       
       
    • By BorizzK
      Что такое массивы и тп я в целом знаю, но поскольку на c++ и подобном никогда не писал (только в Дейзе столкнулся), то есть некоторое непонимание некоторых принципов работы с массивами в данном случае
       
      Продположим
       
      обявили массив внутри функции
       
      array<string> stringParam;
      // определяем массив текстового типа который живет до завершения работы функции
       
      или
       
      static array<string> stringParam;
      // определяем массив текстового типа который сохраняет в себе данные и после завершения работы функции и при следующем
      вызове функции содержимое массива останется и может быть использовано внутри функции (повторного обьявления массива не произойдет)
       
      string text = "text";
       
      //записываем содержимое переменной text в элемент массива 0
      stringParam.Insert(text);
      //записываем содержимое переменной text  в элемент массива 1, если переменная text пуста в элемент запишется текст NULL
      stringParam.Insert(text, "NULL");
       
      читаем в переменную text элемент массива 1
      string text = stringParam.Get(1);
       
      А вот теперь вопрос
      Как мне изменить эелемент 1 массива?
      stringParam[1] = "блаблабла";
       
      так?
      в теории должно быть так
       
      Это вообще возможно?
       
      И еще про функцию возвращающую результат в качестве массива
       
       array<string> FileRead(string FileName)
       {
        array<string> stringParam;
        string line_content;
         
      .....

        CloseFile(File);
        return stringParam;
       }
       
      Все верно?
       
  • Our picks

×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.