Welcome to Bot & Hack MMO Site. . If this is your first visit, we encourage you to create an account. >>
Rejestracja

Welcome to the MMO Cheatres Team, one of the biggest Bot & Hack forums for MMO games. We recommend you created an account
Witamy na forum MMO Cheatres Team, na jednym z najwiekszych o tematyce Bot&Hack do gier MMO. Zachecamy do rejestracji i udzielania sie w społeczności.

Linki sponsorowane
Pokaz wyniki od 1 do 6 z 6
  1. #1
    BlikeR
    BlikeR jest nieaktywny
    Administrator Techniczny
    Awatar BlikeR

    Dolaczyl
    Apr 2007
    Postow
    3 972
    Przydatne Thanks Given 
    29
    Przydatne Thanks Received 
    1 511
    Nagrodzony w
    262 Posts

    L2Px Enchant Script

    [vip]
    //............................................
    //Список констант
    const
    Name='Tutaj wpisz swoj nick'; //Wpisz tutaj swoj nick
    //установить константу в зависимости от типа игры (С4 или Интерлюд)
    //-------------------------
    maxitems=250; //количество слотов в инвентаре чара
    debug=false; //если не хотим видеть отладочной информации

    //............................................
    //Список переменных
    var
    Item, scrl: integer;
    ScrollID, ScrollOID: integer; //ScrollID скролла заточки
    ItemID, ItemOID, ItemEnch: integer; //ItemID затачиваемого предмета
    MaxEnchLvl: integer; //уровень заточки который требуется достичь
    //ITEMs
    BaseItems: array[1..maxitems, 1..12] of integer; //все предметы в инвентаре

    StartTime, EndTime: TDateTime;
    good, broken: integer;
    ready: boolean;
    timer, showinf : TTimer;
    ItemCount, CurEnchLvl: integer;
    ItemsName, StringList : TStringList; //названия предметов, имена продавцов
    FormMain : TForm; //Создаваемая форма
    Splitter1, Splitter2 : TSplitter;
    Stats, Msg : TMemo;
    Panel1 : TPanel;
    GroupBox2 : TGroupBox;
    Label1, Label2, Label3, Label4, Label12, Label13 : TLabel;
    ComboBoxItem, ComboBoxScroll : TComboBox;
    CheckBoxItem, CheckBoxScroll : TCheckBox;
    ButtonStartEnchant, ButtonStopEnchant : TButton;
    EditItemVal, EditScrollVal, EditScrollOID, EditItemOID, Edit1, Edit2 : TEdit;
    //............................................
    //*************************************
    //Обработчики событий для элементов управления на форме
    //......................................
    //CheckBoxItem
    procedure CheckBoxItem_Click(Sender: TCheckBox);
    //Event : OnClick
    begin
    if CheckBoxItem.Checked
    then begin
    ItemOID:=BaseItems[ComboBoxItem.ItemIndex+1,2];
    ItemID:=BaseItems[ComboBoxItem.ItemIndex+1,3];
    //проверка
    // EditItemOID.Text:=Inttostr(ItemID);
    // EditItemVal.text:=inttostr(ItemOID);

    ComboBoxItem.Enabled:=false; //выключаем
    end else begin
    ItemID:=0; //отмена
    ItemOID:=0;
    ComboBoxItem.Enabled:=true; //включаем
    //RequestItemList вызываем инвентарь
    buf:=hstr('14');
    SendToServerEx(Name);
    end;
    end;
    //......................................
    //......................................
    //ComboBoxItem
    procedure ComboBoxItem_Click(Sender: TComboBox);
    //Event : OnClick
    begin
    ItemOID:=BaseItems[ComboBoxItem.ItemIndex+1,2];
    ItemID:=BaseItems[ComboBoxItem.ItemIndex+1,3];
    // ItemID:=ExtractIDValues(ComboBoxItem.Items.Strings[ComboBoxItem.ItemIndex]);
    EditItemOID.Text:=Inttostr(ItemID);
    EditItemVal.text:=inttostr(sumitem(ItemID));
    end;
    //......................................
    //......................................
    //CheckBoxScroll
    procedure CheckBoxScroll_Click(Sender: TCheckBox);
    //Event : OnClick
    begin
    if CheckBoxScroll.Checked
    then begin
    ScrollOID:=BaseItems[ComboBoxScroll.ItemIndex+1,2];
    ScrollID:=BaseItems[ComboBoxScroll.ItemIndex+1,3];
    //проверка
    // EditScrollOID.Text:=Inttostr(ScrollID);
    // EditScrollVal.text:=inttostr(ScrollOID);
    ComboBoxScroll.Enabled:=false; //выключаем
    end else begin
    ScrollID:=0; //отмена
    ScrollOID:=0;
    ComboBoxScroll.Enabled:=true; //включаем
    //RequestItemList вызываем инвентарь
    buf:=hstr('14');
    SendToServerEx(Name);
    end;
    end;
    //......................................
    //......................................
    //ComboBoxScroll
    procedure ComboBoxScroll_Click(Sender: TComboBox);
    //Event : OnClick
    begin
    ScrollOID:=BaseItems[ComboBoxScroll.ItemIndex+1,2];
    ScrollID:=BaseItems[ComboBoxScroll.ItemIndex+1,3];
    // ScrollID:=ExtractIDValues(ComboBoxScroll.Items.Strings[ComboBoxScroll.ItemIndex]);
    EditScrollOID.Text:=Inttostr(ScrollID);
    EditScrollVal.text:=inttostr(sumitem(ScrollID));
    end;
    //......................................
    //......................................
    //ButtonStartEnchant
    procedure ButtonStartEnchant_Click(Sender: TButton);
    //Event : OnClick
    begin
    CurEnchLvl:=0;
    Edit2.text:=inttostr(CurEnchLvl);
    msg.Lines.Add('Команда Старт!!!');
    timer.enabled:=true;
    ButtonStartEnchant.Enabled := false;
    ButtonStopEnchant.Enabled := TRUE;
    end;
    //......................................
    //......................................
    //ButtonStopEnchant
    procedure ButtonStopEnchant_Click(Sender: TButton);
    //Event : OnClick
    begin
    msg.Lines.Add('Команда Стоп!!!');
    timer.enabled:=false;
    ready:=false;
    ButtonStartEnchant.Enabled := true;
    ButtonStopEnchant.Enabled := false;
    end;
    //......................................
    //......................................
    procedure Edit1_Exit(Sender: TEdit);
    //Event : OnExit
    begin
    // MyHPID:=ExtractIDValues(ComboBoxHPotion.Items.Strings[ComboBoxHPotion.ItemIndex]);
    // EditHPotionVal.Text:=Inttostr(FindItem(MyHPID));
    // EditHPotionOID.text:=inttostr(ItemBase2[1,1]);
    end;
    //......................................
    //*************************************
    procedure Free_FormMain;
    //Освобождаем ресурсы ...
    begin
    TRY
    if FormMain<>NIL then begin
    FormMain.Free;
    FormMain:=NIL;
    end;
    FINALLY
    END;
    end; //Free_FormMain
    //========================
    //========================
    function Create_FormMain : TForm;
    //Создаем форму и соотв. компоненты на ней ...
    Var
    Yes : boolean;
    begin
    Yes := FALSE;
    Result := TForm.Create(nil);

    TRY
    //------------------------
    //Свойства формы
    Result.Caption := 'Enchant by NLObP v.0.9';
    Result.Left := 397;
    Result.Top := 233;
    Result.Width := 581;
    Result.Height := 205;
    Result.FormStyle := fsNormal;
    Result.Position := poDesigned;
    Result.BorderStyle := bsSizeable;
    Result.BorderWidth := 0;
    Result.WindowState := wsNormal;
    Result.Color := clBtnFace;
    Result.Font.Name := 'Tahoma';
    Result.Font.Size := 8;
    Result.Font.Color := clWindowText;
    Result.Font.CharSet:= 1;
    //------------------------
    //......................................
    //Splitter1
    Splitter1 := TSplitter.Create(Result);
    Splitter1.Parent := Result;
    Splitter1.Align := alBottom;
    Splitter1.Color := clBtnFace;
    Splitter1.Left := 0;
    Splitter1.Top := 103;
    Splitter1.Width := 573;
    Splitter1.Height := 3;
    Splitter1.Visible := TRUE;
    Splitter1.Tag := 0;
    //......................................
    //......................................
    //Splitter2
    Splitter2 := TSplitter.Create(Result);
    Splitter2.Parent := Result;
    Splitter2.Align := alRight;
    Splitter2.Color := clBtnFace;
    Splitter2.Left := 442;
    Splitter2.Top := 0;
    Splitter2.Width := 1;
    Splitter2.Height := 103;
    Splitter2.Visible := TRUE;
    Splitter2.Tag := 0;
    //......................................
    //......................................
    //Stats
    Stats := TMemo.Create(Result);
    Stats.Parent := Result;
    Stats.Left := 443;
    Stats.Top := 0;
    Stats.Width := 130;
    Stats.Height := 103;
    Stats.Visible := TRUE;
    Stats.Tag := 0;
    Stats.Enabled := TRUE;
    Stats.Hint := '';
    Stats.ShowHint := FALSE;
    Stats.Font.Name := 'Tahoma';
    Stats.Font.Size := 8;
    Stats.Font.Color := clWindowText;
    Stats.Color := clWindow;
    Stats.TabOrder := 0;
    Stats.TabStop := TRUE;
    Stats.Align := alRight;
    Stats.WordWrap := TRUE;
    Stats.Alignment := taLeftJustify;
    Stats.WantTabs := FALSE;
    Stats.WantReturns := TRUE;
    Stats.HideSelection := TRUE;
    Stats.MaxLength := 0;
    Stats.OEMConvert := FALSE;
    Stats.ReadOnly := FALSE;
    Stats.ScrollBars := ssNone;
    //......................................
    //......................................
    //Msg
    Msg := TMemo.Create(Result);
    Msg.Parent := Result;
    Msg.Left := 0;
    Msg.Top := 106;
    Msg.Width := 573;
    Msg.Height := 65;
    Msg.Visible := TRUE;
    Msg.Tag := 0;
    Msg.Enabled := TRUE;
    Msg.Hint := '';
    Msg.ShowHint := FALSE;
    Msg.Font.Name := 'Tahoma';
    Msg.Font.Size := 8;
    Msg.Font.Color := clWindowText;
    Msg.Color := clWindow;
    Msg.TabOrder := 1;
    Msg.TabStop := TRUE;
    Msg.Align := alBottom;
    Msg.WordWrap := TRUE;
    Msg.Alignment := taLeftJustify;
    Msg.WantTabs := FALSE;
    Msg.WantReturns := TRUE;
    Msg.HideSelection := TRUE;
    Msg.MaxLength := 0;
    Msg.OEMConvert := FALSE;
    Msg.ReadOnly := FALSE;
    Msg.ScrollBars := ssNone;
    //......................................
    //......................................
    //Panel1
    Panel1 := TPanel.Create(Result);
    Panel1.Parent := Result;
    Panel1.Left := 0;
    Panel1.Top := 0;
    Panel1.Width := 442;
    Panel1.Height := 103;
    Panel1.Visible := TRUE;
    Panel1.Tag := 0;
    Panel1.Enabled := TRUE;
    Panel1.Hint := '';
    Panel1.ShowHint := FALSE;
    Panel1.Caption := '';
    Panel1.Align := alClient;
    Panel1.Color := clBtnFace;
    Panel1.Font.Name := 'Tahoma';
    Panel1.Font.Size := 8;
    Panel1.Font.Color := clWindowText;
    Panel1.Font.CharSet := 1;
    Panel1.BevelWidth := 1;
    Panel1.BorderWidth := 0;
    Panel1.BevelInner := bvNone;
    Panel1.BevelOuter := bvRaised;
    Panel1.TabOrder := 2;
    Panel1.TabStop := FALSE;
    Panel1.AutoSize := FALSE;
    //......................................
    //......................................
    //GroupBox2
    GroupBox2 := TGroupBox.Create(Result);
    GroupBox2.Parent := Panel1;
    GroupBox2.Left := 1;
    GroupBox2.Top := 1;
    GroupBox2.Width := 440;
    GroupBox2.Height := 101;
    GroupBox2.Visible := TRUE;
    GroupBox2.Tag := 0;
    GroupBox2.Enabled := TRUE;
    GroupBox2.Hint := '';
    GroupBox2.ShowHint := FALSE;
    GroupBox2.Caption := 'Настройки';
    GroupBox2.Align := alClient;
    GroupBox2.Color := clBtnFace;
    GroupBox2.Font.Name := 'Tahoma';
    GroupBox2.Font.Size := 8;
    GroupBox2.Font.Color := clWindowText;
    GroupBox2.Font.CharSet := 1;
    GroupBox2.TabOrder := 0;
    GroupBox2.TabStop := FALSE;
    //......................................
    //......................................
    //Label1
    Label1 := TLabel.Create(Result);
    Label1.Parent := GroupBox2;
    Label1.Left := 10;
    Label1.Top := 70;
    Label1.Width := 58;
    Label1.Height := 13;
    Label1.Visible := TRUE;
    Label1.Tag := 0;
    Label1.Enabled := TRUE;
    Label1.Hint := '';
    Label1.ShowHint := FALSE;
    Label1.Caption := 'Уровень Макс.:';
    Label1.Transparent := TRUE;
    Label1.WordWrap := FALSE;
    Label1.Alignment := taLeftJustify;
    Label1.Layout := tlTop;
    Label1.AutoSize := TRUE;
    Label1.Align := alNone;
    Label1.Font.Name := 'Tahoma';
    Label1.Font.Size := 8;
    Label1.Font.Color := clWindowText;
    Label1.Color := clBtnFace;
    //......................................
    //......................................
    //Label1
    Label3 := TLabel.Create(Result);
    Label3.Parent := GroupBox2;
    Label3.Left := 170;
    Label3.Top := 70;
    Label3.Width := 58;
    Label3.Height := 13;
    Label3.Visible := TRUE;
    Label3.Tag := 0;
    Label3.Enabled := TRUE;
    Label3.Hint := '';
    Label3.ShowHint := FALSE;
    Label3.Caption := 'Мин.:';
    Label3.Transparent := TRUE;
    Label3.WordWrap := FALSE;
    Label3.Alignment := taLeftJustify;
    Label3.Layout := tlTop;
    Label3.AutoSize := TRUE;
    Label3.Align := alNone;
    Label3.Font.Name := 'Tahoma';
    Label3.Font.Size := 8;
    Label3.Font.Color := clWindowText;
    Label3.Color := clBtnFace;
    //......................................
    //......................................
    //Edit1
    Edit1 := TEdit.Create(Result);
    Edit1.Parent := GroupBox2;
    Edit1.Left := 90;
    Edit1.Top := 67;
    Edit1.Width := 60;
    Edit1.Height := 21;
    Edit1.Visible := TRUE;
    Edit1.Tag := 0;
    Edit1.Enabled := TRUE;
    Edit1.Hint := 'Введи желаемый уровень улучшения';
    Edit1.ShowHint := TRUE;
    Edit1.Text := '65535';
    Edit1.Font.Name := 'Tahoma';
    Edit1.Font.Size := 8;
    Edit1.Font.Color := clWindowText;
    Edit1.Color := clWindow;
    Edit1.TabOrder := 5;
    Edit1.TabStop := TRUE;
    Edit1.ReadOnly := FALSE;
    Edit1.MaxLength := 0;
    Edit1.AutoSize := TRUE;
    Edit1.OnExit := @Edit1_Exit;
    //......................................
    //......................................
    //Edit2
    Edit2 := TEdit.Create(Result);
    Edit2.Parent := GroupBox2;
    Edit2.Left := 199;
    Edit2.Top := 67;
    Edit2.Width := 60;
    Edit2.Height := 21;
    Edit2.Visible := TRUE;
    Edit2.Tag := 0;
    Edit2.Enabled := TRUE;
    Edit2.Hint := 'Какого уровня смогли достичь';
    Edit2.ShowHint := TRUE;
    Edit2.Text := '0';
    Edit2.Font.Name := 'Tahoma';
    Edit2.Font.Size := 8;
    Edit2.Font.Color := clWindowText;
    Edit2.Color := clWindow;
    Edit2.TabOrder := 5;
    Edit2.TabStop := FALSE;
    Edit2.ReadOnly := TRUE;
    Edit2.MaxLength := 0;
    Edit2.AutoSize := TRUE;
    //......................................
    //......................................
    //Label2
    Label2 := TLabel.Create(Result);
    Label2.Parent := GroupBox2;
    Label2.Left := 416;
    Label2.Top := 19;
    Label2.Width := 18;
    Label2.Height := 13;
    Label2.Visible := TRUE;
    Label2.Tag := 0;
    Label2.Enabled := TRUE;
    Label2.Hint := '';
    Label2.ShowHint := FALSE;
    Label2.Caption := 'шт.';
    Label2.Transparent := TRUE;
    Label2.WordWrap := FALSE;
    Label2.Alignment := taLeftJustify;
    Label2.Layout := tlTop;
    Label2.AutoSize := TRUE;
    Label2.Align := alNone;
    Label2.Font.Name := 'Tahoma';
    Label2.Font.Size := 8;
    Label2.Font.Color := clWindowText;
    Label2.Color := clBtnFace;
    //......................................
    //......................................
    //Label4
    Label4 := TLabel.Create(Result);
    Label4.Parent := GroupBox2;
    Label4.Left := 416;
    Label4.Top := 43;
    Label4.Width := 18;
    Label4.Height := 13;
    Label4.Visible := TRUE;
    Label4.Tag := 0;
    Label4.Enabled := TRUE;
    Label4.Hint := '';
    Label4.ShowHint := FALSE;
    Label4.Caption := 'шт.';
    Label4.Transparent := TRUE;
    Label4.WordWrap := FALSE;
    Label4.Alignment := taLeftJustify;
    Label4.Layout := tlTop;
    Label4.AutoSize := TRUE;
    Label4.Align := alNone;
    Label4.Font.Name := 'Tahoma';
    Label4.Font.Size := 8;
    Label4.Font.Color := clWindowText;
    Label4.Color := clBtnFace;
    //......................................
    //......................................
    //Label12
    Label12 := TLabel.Create(Result);
    Label12.Parent := GroupBox2;
    Label12.Left := 273;
    Label12.Top := 3;
    Label12.Width := 33;
    Label12.Height := 13;
    Label12.Visible := TRUE;
    Label12.Tag := 0;
    Label12.Enabled := TRUE;
    Label12.Hint := '';
    Label12.ShowHint := FALSE;
    Label12.Caption := 'ItemID';
    Label12.Transparent := TRUE;
    Label12.WordWrap := FALSE;
    Label12.Alignment := taLeftJustify;
    Label12.Layout := tlTop;
    Label12.AutoSize := TRUE;
    Label12.Align := alNone;
    Label12.Font.Name := 'Tahoma';
    Label12.Font.Size := 8;
    Label12.Font.Color := clWindowText;
    Label12.Color := clBtnFace;
    //......................................
    //......................................
    //Label13
    Label13 := TLabel.Create(Result);
    Label13.Parent := GroupBox2;
    Label13.Left := 349;
    Label13.Top := 3;
    Label13.Width := 35;
    Label13.Height := 13;
    Label13.Visible := TRUE;
    Label13.Tag := 0;
    Label13.Enabled := TRUE;
    Label13.Hint := '';
    Label13.ShowHint := FALSE;
    Label13.Caption := 'Кол-во';
    Label13.Transparent := TRUE;
    Label13.WordWrap := FALSE;
    Label13.Alignment := taLeftJustify;
    Label13.Layout := tlTop;
    Label13.AutoSize := TRUE;
    Label13.Align := alNone;
    Label13.Font.Name := 'Tahoma';
    Label13.Font.Size := 8;
    Label13.Font.Color := clWindowText;
    Label13.Color := clBtnFace;
    //......................................
    //......................................
    //CheckBoxItem
    CheckBoxItem := TCheckBox.Create(Result);
    CheckBoxItem.Parent := GroupBox2;
    CheckBoxItem.Left := 18;
    CheckBoxItem.Top := 18;
    CheckBoxItem.Width := 66;
    CheckBoxItem.Height := 17;
    CheckBoxItem.Visible := TRUE;
    CheckBoxItem.Tag := 0;
    CheckBoxItem.Enabled := TRUE;
    CheckBoxItem.Hint := 'Поставить галочку если выбрали предмет';
    CheckBoxItem.ShowHint := TRUE;
    CheckBoxItem.Caption := 'Предмет';
    CheckBoxItem.Font.Name := 'Tahoma';
    CheckBoxItem.Font.Size := 8;
    CheckBoxItem.Font.Color := clWindowText;
    CheckBoxItem.Color := clBtnFace;
    CheckBoxItem.TabOrder := 0;
    CheckBoxItem.TabStop := TRUE;
    CheckBoxItem.Checked := FALSE;
    CheckBoxItem.AllowGrayed := FALSE;
    CheckBoxItem.State := cbUnchecked;
    CheckBoxItem.OnClick := @CheckBoxItem_Click;
    //......................................
    //......................................
    //ComboBoxItem
    ComboBoxItem := TComboBox.Create(Result);
    ComboBoxItem.Parent := GroupBox2;
    ComboBoxItem.Left := 90;
    ComboBoxItem.Top := 16;
    ComboBoxItem.Width := 169;
    ComboBoxItem.Height := 21;
    ComboBoxItem.Visible := TRUE;
    ComboBoxItem.Tag := 0;
    ComboBoxItem.Enabled := TRUE;
    ComboBoxItem.Hint := 'Выбери из списка улучшаемый предмет';
    ComboBoxItem.ShowHint := TRUE;
    ComboBoxItem.Text := 'ComboBoxItem';
    ComboBoxItem.Font.Name := 'Tahoma';
    ComboBoxItem.Font.Size := 8;
    ComboBoxItem.Font.Color := clWindowText;
    ComboBoxItem.Color := clWindow;
    ComboBoxItem.TabOrder := 1;
    ComboBoxItem.TabStop := TRUE;
    ComboBoxItem.ItemIndex := -1;
    ComboBoxItem.Sorted := FALSE;
    ComboBoxItem.ItemHeight := 13;
    ComboBoxItem.OnClick := @ComboBoxItem_Click;
    //......................................
    //......................................
    //ButtonStartEnchant
    ButtonStartEnchant := TButton.Create(Result);
    ButtonStartEnchant.Parent := GroupBox2;
    ButtonStartEnchant.Left := 265;
    ButtonStartEnchant.Top := 67;
    ButtonStartEnchant.Width := 75;
    ButtonStartEnchant.Height := 25;
    ButtonStartEnchant.Visible := TRUE;
    ButtonStartEnchant.Tag := 0;
    ButtonStartEnchant.Enabled := TRUE;
    ButtonStartEnchant.Hint := '';
    ButtonStartEnchant.ShowHint := FALSE;
    ButtonStartEnchant.Caption := 'Start';
    ButtonStartEnchant.Font.Name := 'Tahoma';
    ButtonStartEnchant.Font.Size := 8;
    ButtonStartEnchant.Font.Color := clWindowText;
    ButtonStartEnchant.Font.CharSet := 1;
    ButtonStartEnchant.TabOrder := 2;
    ButtonStartEnchant.TabStop := TRUE;
    ButtonStartEnchant.Cancel := FALSE;
    ButtonStartEnchant.ModalResult := 0;
    ButtonStartEnchant.OnClick := @ButtonStartEnchant_Click;
    //......................................
    //......................................
    //ButtonStopEnchant
    ButtonStopEnchant := TButton.Create(Result);
    ButtonStopEnchant.Parent := GroupBox2;
    ButtonStopEnchant.Left := 341;
    ButtonStopEnchant.Top := 67;
    ButtonStopEnchant.Width := 75;
    ButtonStopEnchant.Height := 25;
    ButtonStopEnchant.Visible := TRUE;
    ButtonStopEnchant.Tag := 0;
    ButtonStopEnchant.Enabled := TRUE;
    ButtonStopEnchant.Hint := '';
    ButtonStopEnchant.ShowHint := FALSE;
    ButtonStopEnchant.Caption := 'Stop';
    ButtonStopEnchant.Font.Name := 'Tahoma';
    ButtonStopEnchant.Font.Size := 8;
    ButtonStopEnchant.Font.Color := clWindowText;
    ButtonStopEnchant.Font.CharSet := 1;
    ButtonStopEnchant.TabOrder := 3;
    ButtonStopEnchant.TabStop := TRUE;
    ButtonStopEnchant.Cancel := FALSE;
    ButtonStopEnchant.ModalResult := 0;
    ButtonStopEnchant.OnClick := @ButtonStopEnchant_Click;
    //......................................
    //......................................
    //CheckBoxScroll
    CheckBoxScroll := TCheckBox.Create(Result);
    CheckBoxScroll.Parent := GroupBox2;
    CheckBoxScroll.Left := 18;
    CheckBoxScroll.Top := 41;
    CheckBoxScroll.Width := 66;
    CheckBoxScroll.Height := 23;
    CheckBoxScroll.Visible := TRUE;
    CheckBoxScroll.Tag := 0;
    CheckBoxScroll.Enabled := TRUE;
    CheckBoxScroll.Hint := 'Поставить галочку если выбрали свиток улучшения';
    CheckBoxScroll.ShowHint := TRUE;
    CheckBoxScroll.Caption := 'Свиток';
    CheckBoxScroll.Font.Name := 'Tahoma';
    CheckBoxScroll.Font.Size := 8;
    CheckBoxScroll.Font.Color := clWindowText;
    CheckBoxScroll.Color := clBtnFace;
    CheckBoxScroll.TabOrder := 4;
    CheckBoxScroll.TabStop := TRUE;
    CheckBoxScroll.Checked := FALSE;
    CheckBoxScroll.AllowGrayed := FALSE;
    CheckBoxScroll.State := cbUnchecked;
    CheckBoxScroll.OnClick := @CheckBoxScroll_Click;
    //......................................
    //......................................
    //ComboBoxScroll
    ComboBoxScroll := TComboBox.Create(Result);
    ComboBoxScroll.Parent := GroupBox2;
    ComboBoxScroll.Left := 90;
    ComboBoxScroll.Top := 40;
    ComboBoxScroll.Width := 169;
    ComboBoxScroll.Height := 21;
    ComboBoxScroll.Visible := TRUE;
    ComboBoxScroll.Tag := 0;
    ComboBoxScroll.Enabled := TRUE;
    ComboBoxScroll.Hint := 'Выбери из списка свиток улучшения';
    ComboBoxScroll.ShowHint := TRUE;
    ComboBoxScroll.Text := 'ComboBoxScroll';
    ComboBoxScroll.Font.Name := 'Tahoma';
    ComboBoxScroll.Font.Size := 8;
    ComboBoxScroll.Font.Color := clWindowText;
    ComboBoxScroll.Color := clWindow;
    ComboBoxScroll.TabOrder := 5;
    ComboBoxScroll.TabStop := TRUE;
    ComboBoxScroll.ItemIndex := -1;
    ComboBoxScroll.Sorted := FALSE;
    ComboBoxScroll.ItemHeight := 13;
    ComboBoxScroll.OnClick := @ComboBoxScroll_Click;
    //......................................
    //......................................
    //EditItemVal
    EditItemVal := TEdit.Create(Result);
    EditItemVal.Parent := GroupBox2;
    EditItemVal.Left := 341;
    EditItemVal.Top := 16;
    EditItemVal.Width := 72;
    EditItemVal.Height := 21;
    EditItemVal.Visible := TRUE;
    EditItemVal.Tag := 0;
    EditItemVal.Enabled := TRUE;
    EditItemVal.Hint := '';
    EditItemVal.ShowHint := FALSE;
    EditItemVal.Text := '0';
    EditItemVal.Font.Name := 'Tahoma';
    EditItemVal.Font.Size := 8;
    EditItemVal.Font.Color := clWindowText;
    EditItemVal.Color := clWindow;
    EditItemVal.TabOrder := 6;
    EditItemVal.TabStop := TRUE;
    EditItemVal.ReadOnly := TRUE;
    EditItemVal.MaxLength := 0;
    EditItemVal.AutoSize := TRUE;
    //......................................
    //......................................
    //EditScrollVal
    EditScrollVal := TEdit.Create(Result);
    EditScrollVal.Parent := GroupBox2;
    EditScrollVal.Left := 341;
    EditScrollVal.Top := 40;
    EditScrollVal.Width := 72;
    EditScrollVal.Height := 21;
    EditScrollVal.Visible := TRUE;
    EditScrollVal.Tag := 0;
    EditScrollVal.Enabled := TRUE;
    EditScrollVal.Hint := '';
    EditScrollVal.ShowHint := FALSE;
    EditScrollVal.Text := '0';
    EditScrollVal.Font.Name := 'Tahoma';
    EditScrollVal.Font.Size := 8;
    EditScrollVal.Font.Color := clWindowText;
    EditScrollVal.Color := clWindow;
    EditScrollVal.TabOrder := 7;
    EditScrollVal.TabStop := TRUE;
    EditScrollVal.ReadOnly := TRUE;
    EditScrollVal.MaxLength := 0;
    EditScrollVal.AutoSize := TRUE;
    //......................................
    //......................................
    //EditScrollOID
    EditScrollOID := TEdit.Create(Result);
    EditScrollOID.Parent := GroupBox2;
    EditScrollOID.Left := 263;
    EditScrollOID.Top := 40;
    EditScrollOID.Width := 72;
    EditScrollOID.Height := 21;
    EditScrollOID.Visible := TRUE;
    EditScrollOID.Tag := 0;
    EditScrollOID.Enabled := TRUE;
    EditScrollOID.Hint := '';
    EditScrollOID.ShowHint := FALSE;
    EditScrollOID.Text := '0';
    EditScrollOID.Font.Name := 'Tahoma';
    EditScrollOID.Font.Size := 8;
    EditScrollOID.Font.Color := clWindowText;
    EditScrollOID.Color := clWindow;
    EditScrollOID.TabOrder := 8;
    EditScrollOID.TabStop := TRUE;
    EditScrollOID.ReadOnly := TRUE;
    EditScrollOID.MaxLength := 0;
    EditScrollOID.AutoSize := TRUE;
    //......................................
    //......................................
    //EditItemOID
    EditItemOID := TEdit.Create(Result);
    EditItemOID.Parent := GroupBox2;
    EditItemOID.Left := 264;
    EditItemOID.Top := 16;
    EditItemOID.Width := 72;
    EditItemOID.Height := 21;
    EditItemOID.Visible := TRUE;
    EditItemOID.Tag := 0;
    EditItemOID.Enabled := TRUE;
    EditItemOID.Hint := '';
    EditItemOID.ShowHint := FALSE;
    EditItemOID.Text := '0';
    EditItemOID.Font.Name := 'Tahoma';
    EditItemOID.Font.Size := 8;
    EditItemOID.Font.Color := clWindowText;
    EditItemOID.Color := clWindow;
    EditItemOID.TabOrder := 9;
    EditItemOID.TabStop := TRUE;
    EditItemOID.ReadOnly := TRUE;
    EditItemOID.MaxLength := 0;
    EditItemOID.AutoSize := TRUE;
    //......................................
    Yes := TRUE;
    FINALLY
    if not Yes then begin
    //Освобождаем ресурсы, если неудачно ...
    if Result<>NIL then begin
    Result.Free;
    Result:=NIL;
    end;
    end;
    END;
    msg.Lines.Add('Автоматизация заточки by NLObP для Грации!');
    Result.Show;
    end; //Create_FormMain
    //========================
    //========================
    procedure Init; //Вызывается при включении скрипта
    var
    i:integer;
    begin
    FormMain:=Create_FormMain;
    //Enchant:=false;
    CurEnchLvl:=0;
    timer:=TTimer.Create(nil);
    timer.OnTimer:=@OnTimer;
    timer.enabled:=false;
    timer.interval:=500; //время задержки

    ShowInf:=TTimer.Create(nil);
    ShowInf.OnTimer:=@OnShowInfo;
    ShowInf.enabled:=true;
    ShowInf.interval:=1000; //время задержки

    StartTime:=time;
    good:=0;
    broken:=0;
    ready:=false;
    //RequestItemList вызываем инвентарь
    buf:=hstr('14');
    SendToServerEx(Name);
    StringList:=TStringList.Create;
    ItemsName:=TStringList.Create;
    try
    ItemsName.LoadFromFile('itemsid.ini');
    except
    msg.Lines.Add('itemsid.ini не найден!');
    exit;
    end;

    ButtonStartEnchant.Enabled := true;
    ButtonStopEnchant.Enabled := false;

    end;
    //..............................................................................
    procedure Free; //Вызывается при выключении скрипта
    begin
    BaseItems:=nil; //нельзя так делать с массивом
    ShowInf.Enabled:=false; ShowInf.Interval:=0; ShowInf.Free; ShowInf.OnTimer:=nil;
    timer.Enabled:=false; timer.Interval:=0; timer.Free; timer.OnTimer:=nil;

    StringList.Clear;
    ItemsName.Clear;
    //достаточно освободить форму
    Free_FormMain;
    end;
    //..............................................................................
    procedure ShowInfo;
    var
    i: integer;
    begin
    stats.Lines.Clear;
    stats.Lines.Add('Имя чара :'+Name);
    stats.Lines.Add('Время старта :'+TimeToStr(starttime));
    stats.Lines.Add('Время работы :'+TimeToStr(time-starttime));
    stats.Lines.Add('Улучшили: '+IntToStr(good));
    stats.Lines.Add('Сломали: '+IntToStr(broken));
    end;
    //......................................
    //***************************************************************
    procedure OnShowInfo(Sender: TObject); //выводим в форму
    begin
    ShowInfo;
    end;
    //..............................................................................
    //послать сообщение в чат
    //use: SendMessage(msg);
    procedure SendMessage(msg:string); //отправка системных сообщений клиенту
    begin
    buf:=#$4A;
    WriteD(0);
    WriteD(10);
    WriteS('');
    WriteS(msg);
    SendToClientEx(Name);
    end;
    //..............................................................................
    procedure debugMsg(msg: string);
    begin
    if debug then begin
    sendMSG(msg);
    SendMessage(msg);
    end;
    end;
    //..............................................................................
    procedure ItemList;
    {Создаем базу Items}
    //11=ItemList:h(ShowWindow)h(ListSize:Loop.01.0021)h(ItemType1)d(ObjectID)
    // d(ItemID:Get.Func01)d(LocationSlot)d(Count)h(ItemType2)h(CustomType1)
    // h(isEquipped)d(BodyPart)h(EnchantLevel)h(CustType2)d(AugmentationID)
    // d(Mana)d(AttackAttrElement)d(AttackAttrElementVal)d(DefAttrFire)
    // d(DefAttrWater)d(DefAttrWind)d(DefAttrEarth)d(DefAttrHoly)d(DefAttrUnholy)
    var
    i, j, k: integer;
    ListCount: integer;
    begin
    j:=4; //смещение для ListCount
    ListCount:=ReadH(j); //количество итемов не должно превышать max!
    for i:=1 to maxitems do
    if (i<=ListCount) then begin
    BaseItems[i,1]:=ReadH(j); //ItemType1
    BaseItems[i,2]:=ReadD(j); //ObjectID
    BaseItems[i,3]:=ReadD(j); //ItemID
    BaseItems[i,4]:=ReadD(j); //LocationSlot
    BaseItems[i,5]:=ReadD(j); //Count
    BaseItems[i,6]:=ReadH(j); //ItemType2
    BaseItems[i,7]:=ReadH(j); //CustomType1
    BaseItems[i,8]:=ReadH(j); //isEquipped
    BaseItems[i,9]:=ReadD(j); //BodyPart
    BaseItems[i,10]:=ReadH(j); //EnchantLevel
    BaseItems[i,11]:=ReadH(j); //CustType2
    BaseItems[i,12]:=ReadD(j); //AugmentationID
    //debugmsg('OID='+inttostr(BaseItems[i,2])+' ID='+inttostr(BaseItems[i,3]));
    inc(j,40);
    end else for k:=1 to 12 do BaseItems[i,k]:=0; // забиваем нулями
    //вносим изменения в чекбоксы
    StringList.Clear;
    try
    for i:=1 to ListCount do begin
    try
    //StringList.Add(ItemsName[ItemBase[2,i]-1]); //записываем название вещей из инвентаря
    StringList.Add(ItemsName.Values[IntToStr(BaseItems[i,3])]); //записываем название вещей из инвентаря
    except;
    //msg.Lines.Add('Пропускаем! Нет ItemID='+inttostr(BaseItems[i,3])+' в itemsid.ini');
    end
    end;
    except;
    //msg.Lines.Add('ошибка в CreateItemBase->StringList.Add()');
    //msg.Lines.Add(inttostr(BaseItems[i,3]));
    exit;
    end;
    if not CheckBoxItem.Checked then begin //наполняем комбобокс
    with ComboBoxItem do
    begin
    Items.Clear;
    Items.Assign(StringList);
    ItemIndex:=0;
    end;
    end;
    if not CheckBoxScroll.Checked then begin //наполняем комбобокс
    with ComboBoxScroll do
    begin
    Items.Clear;
    Items.Assign(StringList);
    ItemIndex:=0;
    end;
    end;
    end;
    //..............................................................................
    procedure InventoryUpdate; //пакет 27, Создает базу ObjectID по ItemID
    var
    i, ii, j, k, ListCount, UpdType : integer;
    ItemType1, ObjectID, ItemID, LocationSlot, Count, ItemType2, CustomType1,
    isEquipped, BodyPart, EnchantLevel, CustType2, AugmentationID :integer;
    additem : boolean;
    begin
    additem:=true;
    ListCount:=ReadH(2); //количество итемов
    // debugmsg('ListCount='+inttostr(ListCount));
    j:=4; //смещение для действия с предметом 1-добавлен 2-изменен 3-удален
    for i:=1 to ListCount do begin
    UpdType:=ReadH(j);
    ItemType1:=ReadH(j);
    ObjectID:=ReadD(j);
    ItemID:=ReadD(j);
    LocationSlot:=ReadD(j);
    Count:=ReadD(j);
    ItemType2:=ReadH(j);
    CustomType1:=ReadH(j);
    isEquipped:=ReadH(j);
    BodyPart:=ReadD(j);
    EnchantLevel:=ReadH(j);
    CustType2:=ReadH(j);
    AugmentationID:=ReadD(j);
    case UpdType of
    1: k:=0; //добавлен новый предмет
    2: k:=ObjectID; //изменен предмет в инвентаре
    3: begin //удален
    for ii:=1 to maxitems do
    if (BaseItems[ii,2]=ObjectID) then begin
    //debugmsg('удаляем OID='+inttostr(BaseItems[ii,2])+' ID='+inttostr(BaseItems[ii,3]));
    for k:=1 to 12 do BaseItems[ii,k]:=0;
    break;
    end;
    end;
    end;
    for ii:=1 to maxitems do begin
    if (BaseItems[ii,2]=k) then begin
    BaseItems[ii,1]:=ItemType1;
    //BaseItems[ii,2]:=ObjectID;
    BaseItems[ii,3]:=ItemID;
    BaseItems[ii,4]:=LocationSlot;
    BaseItems[ii,5]:=Count;
    BaseItems[ii,6]:=ItemType2;
    BaseItems[ii,7]:=CustomType1;
    BaseItems[ii,8]:=isEquipped;
    BaseItems[ii,9]:=BodyPart;
    BaseItems[ii,10]:=EnchantLevel;
    BaseItems[ii,11]:=CustType2;
    BaseItems[ii,12]:=AugmentationID;
    //debugmsg('доб/изм OID='+inttostr(BaseItems[ii,2])+' ID='+inttostr(BaseItems[ii,3]));
    break;
    end;
    end;
    inc(j,38);
    end;
    end;
    //..............................................................................
    function GetItem(ID, FieldIn, FieldOut : integer): integer;
    {GetInv(что ищем, № поля где ищем, № поля что возвращать)
    где:
    ID - искомый код;
    FieldIn - по какому полю ищем;
    FieldOut - какое поле возвращаем;
    1=ItemType1; 2=ObjectID;3=ItemID;4=LocationSlot;5=Count;6=ItemType2;7=CustomType1;
    8=isEquipped;9=BodyPart;10=EnchantLevel;11=CustType2;12=AugmentationID;
    ex1: GetInv(6408,2,1) - вернет ObjectID свадебного платья, если онное лежит в
    инвентаре, иначе вернет -1
    ex2: GetInv(6408,2,8) - вернет уровень заточки первого попавшегося в инвентаре
    свадебного платья, если свадебного платья нет, то вернет -1
    }
    var
    i: integer;
    begin
    for i:=1 to maxitems do
    if (BaseItems[i,FieldIn]=ID) then begin
    Result:=BaseItems[i,FieldOut];
    //debugmsg('Нашли='+inttostr(result));
    exit;
    end;
    Result:=-1;
    end;
    //..............................................................................
    //******************************************************************************
    //находим в инвентаре предмет с ItemID и возвращаем его ObjectID
    function GetItemEnchant(item,lvl:integer) : integer;
    var
    i : integer;
    begin
    //ничего не нашли
    result:=0;
    for i:=1 to maxitems do
    if (BaseItems[i,3]=item) and (BaseItems[i,10]=lvl) then begin
    ItemEnch:=BaseItems[i,10];
    Result:=BaseItems[i,2];
    //debugmsg('Нашли='+inttostr(result));
    exit;
    end;
    // Result:=-1;
    end;
    //******************************************************************************
    function SumItem(Item: integer):integer;
    var
    sum, i : integer;
    begin
    result:=0;
    //находим подходящий предмет по ItemID
    for i:=1 to maxitems do begin
    if (BaseItems[i,3]=item) then begin
    // msg.Lines.Add('Нашли предмет ItemOID='+inttostr(ItemBase[1,i])+' ItemID='+inttostr(ItemBase[2,i])+' ItemCol='+inttostr(ItemBase[3,i])+' EnchantLvl='+inttostr(ItemBase[4,i]));
    // msg.Lines.Add('i='+inttostr(i));
    result:=result+BaseItems[i,5]; //count
    //inc(result);
    end;
    end;
    end;
    //******************************************************************************
    procedure UseItem(ObjectID: integer);
    begin
    buf:=#$19;
    WriteD(ObjectID);
    WriteD(0);
    SendToServerEx(Name);
    end;
    //******************************************************************************
    procedure RequestEnchantItem(ObjectID: integer);
    begin
    buf:=#$5F;
    WriteD(ObjectID);
    SendToServerEx(Name);
    end;
    //******************************************************************************
    procedure OnTimer(Sender: TObject);
    begin
    EditItemVal.text:=inttostr(sumitem(ItemID));
    EditScrollVal.text:=inttostr(sumitem(ScrollID));
    if (strtoint(Edit2.text)>=strtoint(Edit1.Text)) then begin
    msg.Lines.Add('Нет подходящих предметов для улучшения! Прервано!');
    ButtonStartEnchant.Enabled := true;
    ButtonStopEnchant.Enabled := false;
    timer.enabled:=false;
    exit;
    end;
    if (sumitem(ItemID)<=1) then begin
    // if (sumitem(ItemID)<=0) then begin //если надо точить одну вещь
    ButtonStartEnchant.Enabled := true;
    msg.Lines.Add('Предметов для улучшения должно быть больше двух! Прервано!');
    ButtonStartEnchant.Enabled := true;
    ButtonStopEnchant.Enabled := false;
    timer.enabled:=false;
    exit;
    end;

    if ready then exit;

    ScrollOID:=GetItem(ScrollID,3,2);//найдем OID скролла
    if ScrollOID=-1 then begin
    msg.Lines.Add('Кончились свитки! Прервано!');
    ButtonStartEnchant.Enabled := true;
    ButtonStopEnchant.Enabled := false;
    timer.enabled:=false;
    exit;
    end;
    UseItem(ScrollOID);
    msg.Lines.Add('Задействовали свиток ScrollID='+IntToStr(scrollID)+' ScrollOID='+IntToStr(ScrollOID));
    ready:=true; //готовы затачивать
    end;
    //******************************************************************************
    // вызывается при приходе каждого пакета, если скрипт включен
    //******************************************************************************
    begin
    //****************************************************************************
    //не обрабатываем пустые пакеты
    if pck='' then exit;
    //****************************************************************************
    if FromServer then
    case pck[1] of
    //......................................
    #$11: begin
    //debugmsg('S>C Пакет ItemListPacket #$11');
    ItemList;
    end;
    //......................................
    #$21: begin
    //debugmsg('S>C Пакет InventoryUpdate #$21');
    InventoryUpdate;
    end;
    //......................................
    //Пакет ChooseInventory
    #$7C: begin
    if ready then begin //and (readd(2)=itemid)
    //ищем подходящий предмет для заточки
    timer.enabled:=false; //отключаем пока не найдем предмет для заточки
    repeat
    ItemOID:=GetItemEnchant(ItemID, CurEnchLvl);
    if ItemOID=0 then begin
    inc(CurEnchLvl);
    Edit2.text:=inttostr(CurEnchLvl);
    end;
    until ItemOID<>0;
    //************************************************
    if (CurEnchLvl>=strtoint(Edit1.Text)) then begin
    msg.Lines.Add('Нет подходящих предметов для улучшения! Прервано!');
    msg.Lines.Add('Достигли MaxEnchLvl!');
    timer.enabled:=false;
    ready:=false;
    delay(500);
    RequestEnchantItem(-1);
    exit;
    end else begin
    // msg.Lines.Add('Пробуем улучшить ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
    RequestEnchantItem(ItemOID);
    ready:=false;
    timer.enabled:=true;
    end;
    end;
    end;
    #$87: begin
    if readd(2)=0 then begin
    msg.Lines.Add('Улучшили ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
    inc(good);
    end else begin
    msg.Lines.Add('Сломали ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID)+' ItemEnchLvl='+IntToStr(ItemEnch));
    inc(broken);
    end;
    // CurEnchLvl:=0; //начнем с начала
    end;
    end;[/vip]
    end.

    Linki sponsorowane
    Prywatnej pomocy udzielam tylko osobą które maja minimum 100 postów.
    Masz pytanie zadaj je w odpowiednim temacie na forum.

  2. Wolne miejsce Reklamowe
  3. #2
    Axaros
    Axaros jest nieaktywny
    Prawdziwy gracz
    Awatar Axaros

    Dolaczyl
    Mar 2009
    Postow
    1 341
    Przydatne Thanks Given 
    0
    Przydatne Thanks Received 
    7
    Nagrodzony w
    6 Posts

    Odp: L2Px Enchant Script

    Jeśli chcesz wspomóc nas [kliknij]

  4. #3
    zal
    zal jest nieaktywny
    Początkujacy
    Awatar zal

    Dolaczyl
    Mar 2011
    Postow
    2
    Przydatne Thanks Given 
    0
    Przydatne Thanks Received 
    0
    Nagrodzony w
    0 Posts

    Odp: L2Px Enchant Script

    gdzie mam to dodac, wpisac>??

  5. #4
    marlock
    marlock jest nieaktywny
    Początkujacy
    Awatar marlock

    Dolaczyl
    Mar 2011
    Postow
    1
    Przydatne Thanks Given 
    0
    Przydatne Thanks Received 
    0
    Nagrodzony w
    0 Posts

    Odp: L2Px Enchant Script

    tes mnie interesuje co stym?

  6. #5
    demoneq10
    demoneq10 jest nieaktywny
    Początkujacy
    Awatar demoneq10

    Dolaczyl
    Sep 2010
    Postow
    5
    Przydatne Thanks Given 
    0
    Przydatne Thanks Received 
    0
    Nagrodzony w
    0 Posts

    Odp: L2Px Enchant Script

    dziala tylko cos mnie czasami wywala

  7. #6
    CeLi
    CeLi jest nieaktywny
    Początkujacy
    Awatar CeLi

    Dolaczyl
    Jun 2011
    Postow
    10
    Przydatne Thanks Given 
    0
    Przydatne Thanks Received 
    0
    Nagrodzony w
    0 Posts

    Odp: L2Px Enchant Script

    CIekawy program lecz nie moge go pobrac ; )

 

 

Podobne watki

  1. Enchant L2XE Bot 1.2a
    By BlikeR in forum Lineage 2 Hacki, boty, cheaty
    Odpowiedzi: 14
    Ostatni post / autor: 13th September 2011, 14:00
  2. AIO Auto Enchant - L2NET script (safe from auto kick)(Gracia Final)
    By BlikeR in forum Lineage 2 Hacki, boty, cheaty
    Odpowiedzi: 0
    Ostatni post / autor: 29th December 2010, 11:25
  3. Auto Skill Enchant
    By VanKosiara in forum Lineage 2 Hacki, boty, cheaty
    Odpowiedzi: 4
    Ostatni post / autor: 30th December 2009, 05:12

Tagi dla tego watku

Uprawnienia umieszczania postow

  • Nie mozesz zakladac nowych tematow
  • Nie mozesz pisac wiadomosci
  • Nie mozesz dodawac zalacznikow
  • Nie mozesz edytowac swoich postow
  •