Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const
- obsidian_knife = 9642;
- skin_body = [9599];
- function searchIntArray(id:integer): boolean;
- var
- i: integer;
- begin
- result := false;
- for i := low(skin_body) to high(skin_body) do begin
- if skin_body[i] = id then result := true;
- end;
- end;
- function GetItemFromOpenBackpack(ID: integer): TItem;
- var
- y: integer;
- begin
- Result := nil;
- for x := 0 to Self.Containers.Count - 1 do
- begin
- if x >= Self.Containers.Count then Break;
- for y := 0 to Self.Containers.Container[x].Count - 1 do
- begin
- if y >= Self.Containers.Container[x].Count then Break;
- if Self.Containers.Container[x].Item[y].ID = ID then
- begin
- Result := Self.Containers.Container[x].Item[y];
- Exit;
- end;
- end;
- end;
- end;
- function SkinBodies(id:integer): Boolean;
- var
- x, y: integer;
- knife: TItem;
- t: integer;
- begin
- UpdateWorld;
- knife := GetItemFromOpenBackpack(obsidian_knife);
- if knife = nil then
- begin
- Self.DisplayText('An Obsidian Knife could not be found, please open a container with it.');
- exit;
- end;
- t := -1;
- for x := -1 to 1 do begin
- for y := -1 to 1 do begin
- // if Screen.Tile[7+x, 5+y].Count >= 3 then begin
- // t := -2
- // end else t := -1;
- if searchIntArray(Screen.Tile[7+x, 5+y].Item[Screen.Tile[7+x, 5+y].Count+t].ID) = true then begin
- UpdateWorld;
- knife := GetItemFromOpenBackpack(obsidian_knife);
- if knife <> nil then begin
- knife.UseWithGround(Self.X+X, Self.Y+Y, Self.Z);
- Self.DisplayText('Attempted to skin a creature with the ID ' + IntToStr(Screen.Tile[7+x, 5+y].Item[Screen.Tile[7+x, 5+y].Count-1].ID) + '.');
- Sleep(100);
- UpdateWorld;
- end;
- end;
- end;
- end;
- end;
- begin
- while not terminated do begin
- UpdateWorld;
- SkinBodies(skin_body);
- Sleep(2000);
- end;
- end;
Add Comment
Please, Sign In to add comment