Просмотр полной версии : Скрипт на заточку под сервер Epoch-life(х7 000)
Ребят в скриптах не бум бум, вообще непонимаю как его настроить под сервер...
Пажалуста подскажите готовый скрипт под сервер Epoch-life(интерлюд).
Мне нужно что бы он просто точился. Без покупок и прочей фигни, просто подрят 1 и туже пушку до определенной отметки, буду очень благодарен...
Shock3D, есть темы со сриптами заточки, подбери подходящий скрипт.
Этот скрипт для интерлюда,настраивал "wimax"
Const
  NickName = 'Shock3D';
  MaxEnchantLevel = Доскольки точить ЧИСЛО;
  interval = 230;   //Интервал между точкой
  MainDebug = false; // ПИСАТТЬ СОБОЩЕНИЯ В ЧАТ ИЛИ НЕТ ДА-true НЕТ-false
  
var
  CurLevel: integer;
  tick: integer;
  SKillID: integer;
procedure Init; //Вызывается при включении скрипта
begin
  CurLevel := -1;
end;
function Wait(var tick: integer; Timewait: Integer): Boolean; // сквозная проверка без остановки скрипта
var
  t: integer;
begin
  result:=false;
  t:=Round(Time*86400);
  if t>(tick+Timewait) then begin
    if tick>0 then result:=true;
    tick:=t;
  end;
end;
procedure SendMsg_to_Chat(ChatType: integer; msg:string);                                 
begin
  buf:=#$4A;
  WriteD(0);
  WriteD(10);
  WriteS(NickName);
  WriteS(msg);
  SendToClientEx(NickName);
end;
// послать отладочное сообщение себе
procedure DebugMsg(msg:string);
begin
  if MainDebug then
    SendMsg_to_Private(msg);
end;
// послать сообщение себе в приват
procedure SendMsg_to_Private(msg:string);
begin
  SendMsg_to_Chat(2,msg);
end;
begin
  if pck = '' then exit;
  // Т.к. использоваться будет только для одного чара, остальных сразу отсеиваем
  if ConnectName<>NickName then Exit;
  // пакет - сообщение со статусом заточки
  if FromServer and (pck[1]=#$62) and (pck[3]+pck[4]+pck[5] = HStr('05 00 00')) then begin
    if (pck[2] = #$A0)or(pck[2] = #$A1)then begin
      SKillID := ReadD(14);
      CurLevel := ReadD(18);
      // заточка была не удачной, обнуляем текущий уровень заточки
      if pck[2] = #$A1 then
        CurLevel := (CurLevel div 100)*100;  // округляем
      DebugMsg('SKillID='+inttostr(SKillID)+'; CurLevel='+inttostr(CurLevel));
      if (CurLevel mod 100) >= MaxEnchantLevel then
        CurLevel := -1;
      tick := 0;
      Wait(tick, interval);
    end;
  end;
  //  Можно закомментировать "and Wait(tick, interval)", точиться будет намного быстрее,
  // только ощущение такое, что шанс точки меньше, хотя может и показалось
  if (CurLevel >= 0) and Wait(tick, interval) then begin
    DebugMsg('точим');
    buf := HStr('D0 0F 00');
    WriteD(SKillID);
    WriteD(CurLevel+1);
    SendToServerEx(NickName);
    CurLevel := -1;
  end;
end.
vBulletin® v3.6.11, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot