Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Скупка Регоф
Alexiz
сообщение 22.10.2008, 0:45
Сообщение #1


****

Группа: Пользователи
Наличность: 0
Из: Ирландия
Пользователь №: 7.644
Возраст: 21



Так можно сделать скрипт на скупку регоф по Rune book или у кого есть готовый скрипт ?

тоесть

1. Открыл Rune book
2. Полетел по 1-й руне
3. Сказал продавцу BUY
4. Скупил Blood Moss/Spider Silk/Garlik root / Nightshade и тагдалие
5. Полетел по другой рене там сделал всё тоже самое и в конце полетел в дом там всё сложил в сундук , подождал 10 минут и всё заново . .. ?


--------------------
Смерть стоит того чтобы жить,
Любовь стоит того чтобы ждать...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Warstone
сообщение 27.10.2008, 1:17
Сообщение #2


*********

Группа: Модераторы
Наличность: 0
Пользователь №: 10.905
Возраст: 25



Можно. Сколько заплатишь и где играешь (на разных шардах свои особенности)


--------------------
Do. Or do not. There is no Try!
© Master Joda, Dagobah, Star Wars: Episode V.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
bIbIbIbI
сообщение 27.10.2008, 5:54
Сообщение #3


****

Apprentice
Сообщений: 248
Регистрация: 14.6.2008
Группа: Пользователи
Наличность: 0
Из: Трущеб
Пользователь №: 10.846



Цитата(Warstone @ 27.10.2008, 1:17) *

Можно. Сколько заплатишь и где играешь (на разных шардах свои особенности)

хы,мне идея тоже нравиться,яб 5$ дал .. .. (IMG:style_emoticons/default/smile.gif))
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Flammeble
сообщение 9.2.2009, 11:41
Сообщение #4


**

Группа: Пользователи
Наличность: 0
Пользователь №: 11.462
Возраст: 19



;===========================================================================

;-------------------------Item Type Reference-------------------------------

;===========================================================================

;KUF;Black Pearl

;JUF;Blood moss

;KZF;Garlic

;JZF;Gensing

;MZF;Mandrake Root

;WZF;Nightshade

;RZF;Spider Silk

;SZF;Sulfurous Ash

;IUF;Batwings

;YZF;Pig Iron

;TZF;Grave Dust

;DUF;Daemon Blood

;UZF;Nox Crystals

;WUF;бутылки пустые!

;TLK - доски

;JJG - кожа

;DEG не порезаная

;===========================================================================


;===========================================================================

; Script Name: Auto Item Buyer

; Global Variables Used: CEO*FILESYSTEM (GEN AIB)

; Purpose: Recalls to vendor shops, buys items, and recalls back

; to bank, unloads, gets more gold, and goes to next shop

;===========================================================================

; Special Thanks:

;---------------------------------------------------------------------------

; Author: snicker7

; Script Name: sub s7UseRunebook

;---------------------------------------------------------------------------

; Author: Quintok / Raziel

; Script Name: sub waitForSysVars

;---------------------------------------------------------------------------

; Author CEO

; Script Name: Sub CEO*FILESYSTEM

;===========================================================================

; Items Needed:

; Backpack: 2 Rune Books, 1 with 2 bank runes, and 1 with vendor shops.

; Bank: 2 Bags, 1 for Gold, and 1 for items.

; Beetle(bonded or not)

;===========================================================================

; THIS SCRIPT WILL ONLY WORK WITH A BEETLE, SO GET ON YOUR BEETLE!

;===========================================================================

; Instructions: Start off at any bank, click play and follow menu.

;===========================================================================

; Tips & Fetures

;===========================================================================

; On your first setup, or any time you need to change runebooks,

; or boxes in bank, set those before rune numbers, travel method,

; or items to buy.

; Pick your travel method (only required on first time setup)

; Pick the items you wish to buy and click play

;

; Misc. Items(s)

; If you wish to use Misc items, you can't use the top 3 choices..

; (All Magery Regs, All Necrdo Regs, or Blank Scrolls). Check Misc Items,

; and put as many items types as you wish in the box below and click start.

; you must separate each item type with _ . So 3 items type would look like

; this XXX_XXX_XXX

; To get the itemtype of an item. First drag & drop the item. Now open easyuo

; and look under Last Action, and then #LLIFTEDTYPE. and that value will be

; the itemtype of the last itme you picked up. There is a list of itemtypes above.

;

; CEOFilesystem, When you run this script with each new charactor,

; it will go straight to setup for the first time, after that it will

; ask if you need to run setup. After you run setup for the first time, you never

; have to run setup again, unless you want to change the items you are buying

; or runesbooks, boxes, ect. You don't have to setup boxes, runebooks, or

; travel method again if you run setup. Just pick items you wish to buy and

; hit start. Setup is saved for each character.

;===========================================================================

;--------------------------------Delay Adjustments--------------------------

;===========================================================================

set %slowconn #TRUE;If you have a slow connection or computer set to #TRUE

;---------------------------------------------------------------------------

; If you are having problems with client crashing when dragging an item

; raise the %ex_delay 10 at a time until you don't.

set %ex_delay 20;exevent drag and drop delay

;---------------------------------------------------------------------------

; If you are having beetle problems, raise the %beetle_delay 10

; at a time until you don't

set %beetle_delay 30;setup beetle, mount/dismount beetle

;---------------------------------------------------------------------------

; If you need to adjust the respawn timer, put in how many mins you want to wait,

; default is 20 mins from the time you recall to vendor #1

set %respawntime 60;how many mins to wait for respawn

;===========================================================================

;-------------------------Item Type Reference-------------------------------

;===========================================================================

;KUF;Black Pearl

;JUF;Blood moss

;KZF;Garlic

;JZF;Gensing

;MZF;Mandrake Root

;WZF;Nightshade

;RZF;Spider Silk

;SZF;Sulfurous Ash

;IUF;Batwings

;YZF;Pig Iron

;TZF;Grave Dust

;DUF;Daemon Blood

;UZF;Nox Crystals

;DPF_MMF;Blanck Scrolls

;WUF;бутылки пустые!

;TLK - доски

;JJG - кожа

;DEG не порезаная

;===========================================================================

;---------------------DO NOT MODIFY SCRIPT BELOW THIS LINE------------------

;===========================================================================

;-------------------------------Initiation Process -------------------------

;===========================================================================

set *stop #false

set %respawntime %respawntime * 60

set %trys 0

set #MENUBUTTON closed

set %d_lpc #lpc

set %lpc 1000 ; ajust lpc if buying menu is going too fast.

if %slowconn

set %lpc 20

set %mageregs no

set %necroregs no

set %ALLITEMS KUF_JUF_KZF_JZF_MZF_WZF_RZF_SZF_IUF_YZF_TZF_DUF_UZF_DPF_MMF_WUF_TLK_JJG_DEG

gosub putGlobalVar Gen AIB #CHARID allitems

set %pause Pause

set %pause_resume Pause

set %BR1_text Bank , #spc , rune , #spc , number1

set %BR2_text Bank , #spc , rune , #spc , number2

set %VR_text Number , #spc , of , #spc , vendor , #spc , runes

set %bankrunebook_text Bank , #spc , Runebook

set %vendorrunebook_text Vendor , #spc , Runebook

set %goldbox_text Gold , #spc , Box

set %itembox_text Item , #spc , Box

set %vendor_type_text Vendor , #spc , Type(s)

set %item_type_text Item , #spc , Type(s)

menu hideeuo

set %status Please , #spc , Wait...

gosub showeuomenu4

gosub getglobalvars

set %beetle #false

gosub openpaperdoll

gosub openpack

gosub openstatusbar

set #lobjectid #CHARID

event macro 17 0

wait %beetle_delay

beetle:

finditem ZGB g_1

if #findkind = -1

{

set %status Get , #spc , A , #spc , Beetle

gosub showeuomenu4

wait 1s

goto beetle

}

set %BEETLEID #findid

set #lobjectid %BEETLEID

event macro 17 0

wait %beetle_delay

gosub openbank

set %status Ready....

gosub getGlobalVar GEN AIB #CHARID first

if ! #result

{

set %first 1

gosub showeuomenu1

goto setup

}

gosub first_setup

if %SETUP = NO

goto start

gosub showeuomenu1

setup:

if #menubutton = bank

goto bank

if #menubutton = vendor

goto vendor

if #menubutton = gold

goto gold

if #menubutton = items

goto items

gosub itemsetup

if #menubutton = start

{

gosub travel_runes

menu get maxprice

if #MENURES

{

menu get max_price

set %MAX_PRICE #MENURES

}

set %status Processing...

gosub showeuomenu1

wait 2s

menu hide

gosub showeuomenu2

menu hide

menu hideeuo

set #menubutton closed

gosub SetGlobalVars

goto start

}

goto setup



bank:

set %status Tagert , #spc , Bank , #spc , runebook

gosub showeuomenu1

set #targcurs 1

repeat

until #targcurs = 0

set %BANKRUNEBOOK #ltargetid

set #menubutton Closed

set %status Ready....

set %bankrunebook_text Done

gosub showeuomenu1

goto setup



vendor:

set %status Taget , #spc , Vendor , #spc , Runebook

gosub showeuomenu1

set #targcurs 1

repeat

until #targcurs = 0

set %MAGESHOPS #ltargetid

set #menubutton Closed

set %status Ready....

set %vendorrunebook_text Done

gosub showeuomenu1

goto setup



gold:

set %status Tagert , #spc , Gold , #spc , Box

gosub showeuomenu1

set #targcurs 1

repeat

until #targcurs = 0

set %GOLDBOX #ltargetid

set #menubutton Closed

set %status Ready....

set %goldbox_text Done

gosub showeuomenu1

goto setup



items:

set %status Tagert , #spc , Item(s) , #spc , Box

gosub showeuomenu1

set #targcurs 1

repeat

until #targcurs = 0

set %ITEMBOX #ltargetid

set #menubutton Closed

set %status Ready....

set %itembox_text Done

gosub showeuomenu1

goto setup



start:

menu hide

gosub showeuomenu2

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

menu hideeuo

gosub GetGlobalVars

set #menubutton closed

set %respawn_time #SCNT + %respawntime

set %location 0

set %gold POF

set %vendortype IS_HS

ignoreitem #charid 1

set %goldwithdraw 5000$

set %did_I_buy 10000; must match above number minus "$"

goto atbank

mainloop:

if *stop

{

set #menubutton pause

set *stop #false

}

if #menubutton = pause

gosub pause

set %start #CHARPOSX ;location before you recall

set %status Recalling , #spc , to , #spc , bank..

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

set %BR_R_N #random % 2

set %BR_R %BR1

if %BR_R_N = 1

set %BR_R %BR2

gosub s7UseRunebook %BANKRUNEBOOK %BR_R %TRAVEL

gosub WaitForSysVars %start <> CHARPOSX 5

if #CHARPOSX <> %start

goto atbank

if %slowconn

wait 2s

set %BR_R %BR2

if %BR_R_N = 1

set %BR_R %BR1

gosub s7UseRunebook %BANKRUNEBOOK %BR_R %TRAVEL

gosub WaitForSysVars %start <> CHARPOSX 5

if #CHARPOSX = %start

goto mainloop

if %slowconn

wait 2s

atbank:

set %status Opening , #spc , bank..

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

gosub openbank

set %status Unloading..

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

gosub unloaditems

gosub unloadgold

goto beetlestatus

mainloop3:

if *stop

{

set #menubutton pause

set *stop #false

}

if #menubutton = pause

gosub pause

msg withdraw %goldwithdraw

wait 3s

msg withdraw %goldwithdraw

wait 3s

if #GOLD < %did_I_buy

{

set %status Bank , #spc , out , #spc , of , #spc , gold, , #spc , Script , #spc , halted!

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

halt

}

mainloop2:

if %location >= %VR

{

if %respawn_time > #SCNT

{

set %status Waiting , #spc , for , #spc , respawn..

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

set %timeout #SCNT + 30

set %jstart #jindex + 1

gosub journalcheck

while ( ( %respawn_time > #SCNT ) || ( #result ) )

{

wait 1

if %timeout < #SCNT

{

gosub openpaperdoll

set %timeout #SCNT + 30

gosub journalcheck

}

}

set %respawn_time #SCNT + %respawntime

}

ignoreitem reset 2

set %location 0

}

set %location %location + 1

set %start #CHARPOSX

set %status Recalling , #spc , to , #spc , vendor , #spc , # , %location

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

gosub s7UseRunebook %MAGESHOPS %location %TRAVEL

gosub WaitForSysVars %start <> CHARPOSX 5

if #CHARPOSX = %start

goto mainloop2

if %slowconn

wait 2s

goto findvendor

goto mainloop2

;===========================================================================

;------------------------------- BUYING REGS -------------------------------

;===========================================================================

itemtobuy:

set #lpc %lpc

set %status Shopping..

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

if *stop

{

set #menubutton pause

set *stop #false

}

if #menubutton = pause

gosub pause

getshopinfo

wait 5

if %slowconn

wait 5

event SysMessage #SHOPITEMTYPE ---> %ITEMS1 = %ITEMS2 = %ITEMS3 = %ITEMS4

if #SHOPITEMTYPE in %ITEMS1

{

goto buy

}

if #SHOPITEMTYPE in %ITEMS2

{

goto buy

}

if #SHOPITEMTYPE in %ITEMS3

{

goto buy

}

if #SHOPITEMTYPE in %ITEMS4

{

goto buy

}

if %slowconn

wait 10

click %x_next %y_next;next

if #SHOPCURPOS = #SHOPCNT

{

set #lpc %d_lpc

click %x_sign %y_sign;sign

gosub WaitForSysVars CONTNAME <> bill_gump CONTSIZE <> 283_248 5

ignoreitem %vendor 2

gosub checkground

if ! %beetle

goto findvendor

gosub dimountpickupitems

goto mainloop

}

}

goto itemtobuy





buy:

if *stop

{

set #menubutton pause

set *stop #false

}

if #menubutton = pause

gosub pause

if #SHOPITEMPRICE > %MAX_PRICE

{

if %slowconn

wait 20

click %x_next %y_next

goto skip

}

if %slowconn

wait 20

click %x_buy %y_buy d;buy

wait 10

click %x_buy %y_buy d;buy

wait 10

click %x_buy %y_buy d;buy

wait 10

click %x_buy %y_buy d;buy

wait 10

click %x_buy %y_buy d;buy

wait 10

getShopInfo

wait 10

setShopItem #shopItemID #shopItemMax

if %slowconn

wait 10

click %x_next %y_next;next

skip:

if #SHOPCURPOS = #SHOPCNT

{

set #lpc %d_lpc

click %x_sign %y_sign;sign

gosub WaitForSysVars CONTNAME <> bill_gump CONTSIZE <> 283_248 5

ignoreitem %vendor 2

gosub checkground

if ! %beetle

goto findvendor

gosub dimountpickupitems

goto mainloop

}

}

goto itemtobuy







findvendor:

set %status Finding , #spc , vendor..

menu delete status

menu Font Color Aqua

menu Text status 48 8 %status

if *stop

{

set #menubutton pause

set *stop #false

}

if #menubutton = pause

gosub pause

if %slowconn

wait 10

finditem %vendortype G_8

if #findkind = -1

{

if #gold = %did_I_buy

{

goto mainloop2

}

goto mainloop

}

if #FINDREP <> 7

{

ignoreitem #findid 3

goto findvendor

}

event Property #findID

if guild in #property || quest in #property || banker in #property || minter in #property

{

ignoreitem #findid 3

goto findvendor

}

set %context 40

if tinker in #property

set %context 55

set %vendor #findid

exevent popup %vendor

wait 30

click 20 %context

gosub WaitForSysVars CONTNAME = bill_gump CONTSIZE = 283_248 5

if ! #result

{

if #CONTSIZE = 507_436;Quest menu

{

set %x2 #CONTPOSX + 350

set %y2 #CONTPOSY + 400

click %x2 %y2

wait 30

click %x2 %y2

wait 10

ignoreitem #findid 3

set %trys 0

}

if #CONTSIZE = 463_414;Quest menu 2

{

set %x1 #CONTPOSX + 245

set %y1 #CONTPOSY + 344

click %x1 %y1

wait 10

ignoreitem #findid 3

set %trys 0

}

set %trys %trys + 1

if %trys > 2

{

ignoreitem #findid 3

set %trys 0

}

goto findvendor

}

set %x_buy #CONTPOSX - 118

set %y_buy #CONTPOSY - 135

set %x_next #CONTPOSX + 73

set %y_next #CONTPOSY - 11

set %x_sign #CONTPOSX + 43

set %y_sign #CONTPOSY + 205

goto itemtobuy



beetlestatus:

if ! %beetle

goto mainloop3

gosub unloadbeetle

set %location %location - 1

set %beetle #false

goto mainloop3



;===========================================================================

;------------------------------- Subs --------------------------------------

;===========================================================================

sub checkground

if #WEIGHT >= #MAXWEIGHT

{

set %beetle #true

return

}

finditem %ALLITEMS G_2

if #findkind = -1

{

set %beetle #false

return

}

set %beetle #true

return



sub unloadbeetle

set #lobjectid #CHARID

event macro 17 0

wait %beetle_delay

openbeetle:

exevent popup %BEETLEID

wait 1s

gosub WaitForSysVars CONTNAME = normal_gump CONTSIZE = 192_186 5

set %x_open_b_bag #CONTPOSX + 58

set %y_open_b_bag #CONTPOSY + 164

click %x_open_b_bag %y_open_b_Bag

gosub WaitForSysVars CONTNAME = container_gump CONTSIZE = 230_204 5

set %beetlebag #CONTID

unloadbeetle:

finditem %ALLITEMS C_ , %beetlebag

if #findkind = -1

{

set #lobjectid %BEETLEID

event macro 17 0

wait %beetle_delay

return

}

Exevent Drag #findid #findstack

wait %ex_delay

Exevent Dropc %ITEMBOX

wait %ex_delay

goto unloadbeetle





sub dimountpickupitems

set #lobjectid #CHARID

event macro 17 0

wait %beetle_delay

checkground:

if #WEIGHT >= #MAXWEIGHT

{

finditem %ALLITEMS C_ , #BACKPACKID

if #findkind = -1

{

goto checkground

}

Exevent Drag #findid #findstack

wait %ex_delay

Exevent Dropc %BEETLEID

wait %ex_delay

goto checkground

}

finditem %ALLITEMS G_2

if #findkind = -1

{

wait %beetle_delay

set #lobjectid %BEETLEID

event macro 17 0

wait %beetle_delay

return

}

Exevent Drag #findid #findstack

wait %ex_delay

Exevent Dropc %BEETLEID

wait %ex_delay

goto checkground



sub unloaditems

checkitems:

finditem %ALLITEMS C_ , #BACKPACKID

if #findkind = -1

{

return

}

Exevent Drag #findid #findstack

wait %ex_delay

Exevent Dropc %ITEMBOX

wait %ex_delay

}

goto checkitems





sub unloadgold

checkgold:

finditem %gold C_ , #BACKPACKID

if #findkind = -1

{

return

}

Exevent Drag #findid #findstack

wait %ex_delay

Exevent Dropc %GOLDBOX

wait %ex_delay

goto checkgold

}

goto checkgold





sub openpaperdoll

openpaperdoll:

event macro 8 1

gosub WaitForSysVars CONTNAME = paperdoll_gump CONTSIZE = 262_324 5

movepaperdoll:

set #contposx 800

set #contposy 1

gosub WaitForSysVars CONTPOSX = 800 CONTPOSY = 1 5

if ! #result

{

goto movepaperdoll

}

wait 20

return



sub openpack

openpack:

event macro 8 7

gosub WaitForSysVars CONTSIZE = 230_204 CONTNAME = container_gump

if ! #result

{

goto openpack

}

movepack:

set #CONTPOSX 815

set #CONTPOSY 255

gosub WaitForSysVars CONTPOSX = 815 CONTPOSY = 255 5

if ! #result

{

goto movepack

}

wait 20

return



sub openstatusbar

openstatusbar:

event macro 8 2

gosub WaitForSysVars CONTSIZE = 432_184 CONTNAME = status_gump

if ! #result

{

goto openstatusbar

}

movestatus:

set #CONTPOSX 800

set #CONTPOSY 420

gosu WaitForSysVars CONTPOSX = 800 CONTPOSY = 420 5

if ! #result

{

goto movestatus

}

wait 20

return





sub openbank

openbank:

msg bank$

gosub WaitForSysVars CONTNAME = container_gump CONTSIZE = 180_240 5

if ! #result

goto openbank

set #CONTPOSX 640

set #CONTPOSY 387

gosub WaitForSysVars CONTPOSX = 640 CONTPOSY = 387 5

if ! #result

goto openbank

return



sub pause

set %pause resume

set %pause_resume resume

gosub showeuomenu2

pause:

if #menubutton = resume

{

set %pause pause

set %pause_resume pause

gosub showeuomenu2

return

}

goto pause



sub SetGlobalVars

gosub putGlobalVar GEN AIB #CHARID first

gosub putGlobalVar Gen AIB #CHARID ALLITEMS

gosub putGlobalVar Gen AIB #CHARID MAX_PRICE

gosub putGlobalVar Gen AIB #CHARID BANKRUNEBOOK

gosub putGlobalVar Gen AIB #CHARID MAGESHOPS

gosub putGlobalVar Gen AIB #CHARID GOLDBOX

gosub putGlobalVar Gen AIB #CHARID ITEMBOX

gosub putGlobalVar Gen AIB #CHARID ITEMS1

gosub putGlobalVar Gen AIB #CHARID ITEMS2

gosub putGlobalVar Gen AIB #CHARID ITEMS3

gosub putGlobalVar Gen AIB #CHARID ITEMS4

gosub putGlobalVar Gen AIB #CHARID BR1

gosub putGlobalVar Gen AIB #CHARID BR2

gosub putGlobalVar Gen AIB #CHARID VR

gosub putGlobalVar Gen AIB #CHARID TRAVEL

gosub putGlobalVar Gen AIB #CHARID BEETLEID

return



sub GetGlobalVars

gosub getGlobalVar Gen AIB #CHARID ALLITEMS

gosub getGlobalVar Gen AIB #CHARID MAX_PRICE

gosub getGlobalVar Gen AIB #CHARID BANKRUNEBOOK

gosub getGlobalVar Gen AIB #CHARID MAGESHOPS

gosub getGlobalVar Gen AIB #CHARID GOLDBOX

gosub getGlobalVar Gen AIB #CHARID ITEMBOX

gosub getGlobalVar Gen AIB #CHARID ITEMS1

gosub getGlobalVar Gen AIB #CHARID ITEMS2

gosub getGlobalVar Gen AIB #CHARID ITEMS3

gosub getGlobalVar Gen AIB #CHARID ITEMS4

gosub getGlobalVar Gen AIB #CHARID BR1

gosub getGlobalVar Gen AIB #CHARID BR2

gosub getGlobalVar Gen AIB #CHARID VR

gosub getGlobalVar Gen AIB #CHARID TRAVEL

gosub putGlobalVar Gen AIB #CHARID BEETLEID

return



;==================================

; Script Name: sub waitForSysVars

; Author: Quintok / Raziel

; Version: 1.05

; Client Tested with: 4.0.2b

; EUO version tested with: 0078

; Shard OSI / FS: OSI / FS

; Revision Date: 22th August 2005

; Public Release: 20th March 2004

; Global Variables Used: none

; Purpose: same as waitForSysVar but for multiple inputs.

;%1 system variable without '#'

;%2 = <> > < ... etc

;%3 comparing value

;%4 system variable without '#'

;%5 = <> > < ... etc

;%6 comparing value

;%n = timeout (not required)

;==================================

sub waitForSysVars

set !cnt %0 / 3

set !timeOut #scnt + 5

if ( %0 % 3 = 1 )

set !timeOut #scnt + % . %0

for !i 1 !cnt

{

set !offset 3 * !i - 2

set !evaluation !offset + 1

set !value !offset + 2

if ! ( # . % . !offset % . !evaluation % . !value )

set !i 0

if #scnt > !timeout

return #false

}

return #true

;=================================



;===================================================

; Script Name: sub s7UseRunebook

; Author: snicker7

; Version: 2.0

; Client Tested with: 4.0.11c

; EUO version tested with: 1.42/1.5

; Shard OSI / FS: OSI/FS

; Revision Date: 24Aug05

; Public Release: 24Aug05

; Global Variables Used: N/A

; Purpose: Failsafe sub to recall, gate, sacred journey flawlessly. Options to use scrolls, default locations, recharge books with scrolls in pack if book runs out of charges, and perfect gate travel. Not for the feint of heart!

;===================================================

;======= This file includes the main sub and =======

;===== several support subs that are required. =====

;===================================================

;===== Much love for T-Mo and BM, but I needed =====

;====== to write something I could only blame ======

;======= myself for if it fails. even though =======

;=================== it doesn't. ===================

;===================================================



; =====================================================================;

; /////////////////////////////////////////////////////////////////////;

; // EXCERPTS FROM S7SUBS.EUO /////////////////////////////////////////;

; /////////////////////////////////////////////////////////////////////;

; // Any reproduction of the subroutines below is strictly pro- ///////;

; // hibited without express written permission of the author /////////;

; // (snicker7). Violation of the above will result in malicious //////;

; // actions by the aforementioned author performed upon your person //;

; // including but not limited to: bodily harm, slander, maternal /////;

; // insults, possible legal action, and callin' the five-oh. Thank ///;

; // you. /////////////////////////////////////////////////////////////;

; /////////////////////////////////////////////////////////////////////;

; =====================================================================;



;=/ 1NCLUD3D SUBS: /================================

; s7UseRunebook: Duh, you know why it's there.

; s7ScanJournalFor: SuperMultiParameterJournalScanning Power!

; s7MoveToPos: Legendary snicker7 brand name drag and drop sub. updated!

; s7MoveToCont: Wrapper for the above sub, updated for 1.5 exevents!

; s7WaitForAction: Mildly obsolete, begging for a rewrite object-delay sub!

; s7WaitForVars: Classic sysvar wait sub. One line shorter than Quintok's!

;===================================================



;----

;* @name s7UseRunebook

;* @author snicker7

;* @ver 2.0a 24Aug05

;* @purpose do anything and everything travel related with a runebook

;* @params %1 Rune or Runebook item ID to use

;* %2 number of rune to travel to, use "default" for runes or default in runebook

;* %3 travel method:

;* r: recall

;* g: gate

;* c: sacred journey

;* s: scrolls

;* @dependencies

;* s7WaitForVars

;* s7WaitForAction

;* s7ScanJournalFor

;* s7MoveToCont for recharging runebooks

;* @returns #true on success

;* ERR_* various errors.

;* @notes none

;* @example: gosub s7UseRunebook %bookID 14 r

;* @status done

sub s7UseRunebook

if %0 < 3 || _ , %2 , _ notin _1_2_3_4_5_6_7_8_9_10_11_12_13_14_15_16_default_

return ERR_IncorrectParams

namespace push

namespace local _s7URB

set !runebook %1

set !index %2

set !method %3

set !fails 0

if #contsize = 452_236

{

set !_cx #contposx + 20

set !_cy #contposy + 20

click !_cx !_cy r f dmc

wait 5

}

for !_ 1 1

{

finditem OTF_JEF_KEF G_0

if #findkind <> -1

set !_ 0

}

for !orb 1 1

{

if !fails > 0 2; (changed this line to only fail once before returning)

namespace pop

return ERR_ , #journal

set !jStart #jindex + 1

if !index <> default

{

gosub s7WaitForAction 12

set #lobjectid !runebook

event macro 17 0

gosub s7WaitForVars contname = generic_gump contsize = 452_236 3

if ! #result 2

set !fails !fails + 1

set !orb 0

if #result

{

set !_cy #contposy + 196

set !_cx #contposx + 105 + ( ( ( !index / 2 ) + ( !index % 2 ) ) * 35 )

if !index > 8

set !_cx !_cx + 30

click !_cx !_cy f dmc

wait 5

set !_cx #contposx + 135

set !_cy #contposy + 144

if !method = G

set !_cy !_cy + 20

if !method = C

set !_cy !_cy + 36

if !method = S

set !_cy !_cy - 76

if ( !index % 2 ) = 0

set !_cx !_cx + 160

set !charpos #charposx , _ , #charposy

set !timeout #scnt2

click !_cx !_cy f dmc

}

}

if !index = default

{

set #ltargetid !runebook

set #ltargetkind 1

if !method = c

event macro 15 210

if !method = r

event macro 15 31

if !method = g

event macro 15 51

if !method = s

{

finditem WTL C_ , #backpackid

if #findkind = -1 2

namespace pop

return ERR_NoRecallScrolls

if #findkind <> -1 3

set #lobjectid #findid

gosub s7WaitForAction 12

event macro 17 0

}

for !_ 1 1

{

if #targcurs <> 1

set !_ 0

gosub s7ScanJournalFor !jStart fizzles more_reagents tithing_points insufficient_mana

if #result 3

set !_ 1

set !orb 0

wait 20

}

set !charpos #charposx , _ , #charposy

set !timeout #scnt2

event macro 22 0

}

if !orb = 1

{

for !success 1 1

{

if #charposx , _ , #charposy = !charpos && !method in _r_c_s_

set !success 0

if !method = g

{

finditem OTF_JEF_KEF G_0

if #findkind = -1

set !success 0

if #findkind <> -1

{

set #lobjectid #findid

gosub s7WaitForAction 12

event macro 17 0

for !_ 1 1

{

if #charposx , _ , #charposy = !charpos

set !_ 0

if #contname = generic_gump && #contsize = 420_280

{

set !_cx #contposx + 20

set !_cy #contposy + 260

click !_cx !_cy f dmc

}

}

}

}

gosub s7ScanJournalFor !jStart fizzles location_is_blocked not_yet_recovered no_charges_left more_reagents tithing_points insufficient_mana not_marked

if #result || !timeout + 60 < #scnt2

{

if no_charges in #journal

{

finditem WTL C_ , #backpackid

if #findkind = -1

set !fails 2

if #findkind <> -1

{

set !scrolls #findid

finditem !runebook

set #findmod 0

gosub s7WaitForAction 12

event drag !runebook

for !_ 1 1

{

if #lliftedkind <> 1 2

wait 1

set !_ 0

}

str pos #contsize _

set #strres #strres - 1

str left #contsize #strres

set !_cx #findx + #strres / 2

str pos #contsize _

str del #contsize 1 #strres

set !_cy #findy + #strres / 2

click !_cx !_cy p f dmc

gosub s7MoveToCont !scrolls !runebook #backpackid 20_10

}

}

set !fails !fails + 1

set !success 1

set !orb 0

}

}

wait 20

}

}

namespace pop

return #true



sub s7ScanJournalFor

set !SJFje #jindex + 1

for !SJFji %1 !SJFje

{

scanjournal !SJFji

for !SJFpi 2 %0

{

if % . !SJFpi in #journal

return #true

}

}

return #false





sub journalcheck

JournalCheckLoop:

set %jstart %jstart + 1

scanjournal %jstart

if accounts_was_added in #journal

{

return #false

}

if aaa1 in #journal

{

return #false

}

if %jstart >= #jindex

{

set %jstart #jindex

return #true

}

goto JournalcheckLoop



;----

;* @name s7MoveToPos

;* @author snicker7

;* @ver 1.2 24Aug05

;* @purpose Just Another Item Dragger.

;* @params %1 is the item to be dragged

;* %2 is the x-coord to drop to

;* %3 is the y-coord to drop to

;* %4 is the timeout in seconds

;* %5 is the amount to be dragged (blank for all)

;* @returns #true if drop was successful

;* #false on error (drop to backpack, insufficient params, failed to drag)

;* halt on critical error

;* @notes moves any item to a position on the screen. Will

;* attempt to drop on character if drop fails. If character

;* drop fails, halts and error message to avoid crash.

;* @dependencies

;* s7WaitForAction

;* @example: call s7Subs.euo s7MoveToPos #findid 7 9 4 77

;* @status unknown

sub s7MoveToPos

if %0 < 4

return #false

namespace Push

namespace Local _s7MvToPos

set !_ID %1

set !_x %2

set !_y %3

set !_tO %4

set !_Amt #spc

if %0 > 4

set !_Amt %5

set !_retry 0

_s7MvToPos_SD:

finditem !_ID

if #findkind = -1 2

namespace pop

return #false

gosub s7WaitForAction 13

event drag #findid

if #findstack > 1

{

set !_timeOut #scnt

for !_ 1 1

{

if #contname <> stack_gump && #contname <> drag_gump

{

wait 1

if !_timeOut + !_tO < #scnt

{

set !_retry !_retry + 1

if !_retry > 2 2

namespace pop

return #false

goto _s7MvToPos_SD

}

set !_ 0

}

}

if !_Amt > #findstack

set !_Amt #findstack

msg !_Amt , $

}

set !_retry 0

set !_timeOut #scnt

for !_ 1 1

{

if #lliftedkind <> 1

{

wait 1

if !_timeOut + !_tO < #scnt

{

set !_retry !_retry + 1

if !_retry > 2 2

namespace pop

return #false

goto _s7MvToPos_SD

}

set !_ 0

}

}

set !_retry 0

click !_x !_y p

set !_timeout #scnt

for !_ 1 1

{

if #lliftedkind = 1

{

wait 1

if !_timeout + !_t0 < #scnt

{

set !_retry !_retry + 1

if !_retry = 1

{

set !_x #clixres / 2

set !_y ( #cliyres / 2 ) - 30

click !_x !_y p

set #result #false

set !_timeout #scnt

}

if !_retry = 2 2

display ok You have failed to drop an item to the correct position.$$The script is now halting to prevent a crash.

halt

}

set !_ 0

}

}

set #result #true

namespace pop

return #result



;----

;* @name s7MoveToCont

;* @author snicker7

;* @ver 1.2 24Aug05

;* @purpose A wrapper for the sub s7MoveToPos for moving to containers.

;* @params %1 is the item to be dragged

;* %2 is the container to drag to

;* %3 is the mother container in which %2 is contained

;* %4 is the #findmod value for the container

;* %5 is the amount to be dragged (blank for all)

;* @returns none

;* @notes this is mad basic. no error checking. That is up to you.

;* @dependencies s7MoveToPos

;* @example: call s7Subs.euo s7MoveToCont #findid #backpackid #charid 140_220

;* @status tested good

sub s7MoveToCont

namespace Push

namespace Local _s7MoveToCont

set !_ID %1

set !_DCont %2

set !_MCont %3

set !_FMod %4

if 1_5 in #euover

{

set !_Amt 65535

if %0 > 4

set !_Amt abs %5

finditem !_ID

if #findkind = -1 2

namespace pop

return #false

gosub s7WaitForAction 13

exevent drag #findid !_Amt

exevent dropc !_DCont

namespace pop

return #true

}

set !_Amt #spc

if %0 > 4

set !_Amt %5

set #result #true

set !_retry 0

for !_ 1 1

{

finditem !_DCont C_ , !_MCont

if #findkind = -1

{

set #lobjectid !_MCont

gosub s7WaitForAction 13

event macro 17 0

gosub s7WaitForVars contid = !_MCont 3

if ! #result

{

set !_retry !_retry + 1

if !_retry > 2 2

namespace pop

return #false

}

set !_ 0

}

}

set !_retry 0

set #findmod !_Fmod

for !_ 1 1

{

gosub s7MoveToPos !_ID #findx #findy 4 !_Amt

if ! #result

{

set !_retry !_retry + 1

if !_retry > 2 2

namespace pop

return #false

set !_ 0

}

}

namespace Pop

return #true



;----

;* @name s7WaitForAction

;* @author snicker7

;* @ver 1.1 31Jan05

;* @purpose waits 1.3 seconds before continuing, useful for waiting to perform

;* another action

;* @params none

;* @returns none

;* @notes probably not an original idea, but I need to use it frequently and it

;* was easier to write it myself than to try to look for it as written by

;* someone else



;* @example: call s7Subs.euo s7WaitForAction 13

;* @status tested good

sub s7WaitForAction

_s7WaitForAction:

if %_s7ActionTimer + %1 > #scnt2 2

wait 1

goto _s7WaitForAction

set %_s7ActionTimer #scnt2

return



;----

;* @name s7WaitForVars

;* @author snicker7, inspired by Quintok, and of course, Smertrios

;* @ver 1.2 24Aug05

;* @purpose Multiple input sysvar waiter.

;* @params %1*n is the gump sysvar being checked

;* %2*n is the comparative operator (>, <, <>, =, etc)

;* %3*n is the desired value of the sysvar

;* %nfinal is the timeout in seconds

;* @returns #false if it times out

;* #true if success

;* @notes %1 does not require the preceding number sign

;* one line shorter than Q's, no disrespect son

;* originally written by Smertrios, included in Lexia

;* Multiple inputs by Quintok, Obfuscation and name-

;* spacing by snicker7!

;* @example: call s7Subs.euo s7WaitForVars contID = #backpackID contSize = 7_9 3

;* @status tested good

sub s7WaitForVars

namespace Push

namespace Local _s7WFVs

set !C %0 / 3

set !T #scnt + 5

if ( %0 % 3 ) = 1

set !T #scnt + % . %0

for !i 1 !C

{

set !o 3 * !i - 2

set !p !o + 1

set !q !o + 2

if ! ( # . % . !o % . !p % . !q )

set !i 0

if #scnt > !T 2

namespace pop

return #false

}

namespace Pop

return #true







Sub itemsetup

menu get mageregs

if #MENURES

{

set %ITEMS1 KUF_JUF_KZF_JZF_MZF_WZF_RZF_SZF

set %ITEMS2 false

set %ITEMS3 false

set %ITEMS4 false

set %MAX_PRICE 8

set %MAGEREGS YES

}

menu get necroregs

if #MENURES

{

set %ITEMS2 IUF_YZF_TZF_DUF_UZF

set %ITEMS1 false

if %MAGEREGS = YES

set %ITEMS1 KUF_JUF_KZF_JZF_MZF_WZF_RZF_SZF

set %ITEMS3 false

set %ITEMS4 false

set %MAX_PRICE 8

set %NECROREGS YES

}

menu get scrolls

if #MENURES

{

set %ITEMS3 DPF_MMF

set %ITEMS1 false

set %ITEMS2 false

set %ITEMS4 false

if %MAGEREGS = YES

set %ITEMS1 KUF_JUF_KZF_JZF_MZF_WZF_RZF_SZF

if %NECROREGS = YES

set %ITEMS2 IUF_YZF_TZF_DUF_UZF

set %MAX_PRICE 8

set %SCROLLS YES

}

menu get misc

if #MENURES

{

menu get types

set %ITEMS4 #MENURES

set %ITEMS1 false

set %ITEMS2 false

set %ITEMS3 false

set %ALLITEMS %ITEMS4

}

return



sub travel_runes

menu get BR1

if #MENURES > 0

set %BR1 #MENURES

menu get BR2

if #MENURES > 0

set %BR2 #MENURES

menu get VR

if #MENURES > 0

set %VR #MENURES

menu get travel_method

if #MENURES = 1

set %TRAVEL r

if #MENURES = 2

set %TRAVEL c

if #MENURES = 3

set %TRAVEL g

if #MENURES = 4

set %TRAVEL s

return



sub first_setup

gosub showeuomenu3

first_setup:

if #MENUBUTTON = yes

{

set #MENUBUTTON closed

set %SETUP yes

return

}

if #MENUBUTTON = no

{

set #MENUBUTTON closed

set %SETUP no

return

}

goto first_setup



;==================================

; Script Name: CEO*FileSystem (pseudo filesystem)

; Author: CEO

; Version: 1.1

; Client Tested with: 4.0.1b

; EUO version tested with: 1_41_103

; Shard OSI / FS: OSI

; Revision Date: 040219

; Public Release: 040219

; Globals Used: User specified (2 total)

; Purpose: Allows you to use a * variable as a pseudo-filesystem

;=======================================

; CEO's global variable management subs:

; getGlobalVar . putGlobalVar . delGlobalVar

;=======================================

;

;ver 1.1

;changed the lock file to use *variablename_lock so it'll work with any named *variable

;

Sub getGlobalVar



;ver 1.0 posted 19Feb04 by CEO

;purpose: Allows you to store multiple variables in one global variable unique to

; each player and script. getGlobaVar retrieves a value from a global variable.

;@returns: #result = #false if variable not found, #true if found

; % . %3 contains variable value

;%1 is the global/persistant variable to use ( %1 + 1 is used for locking)

;%2 is the script identifer or pseudo filename

;%3 is #charid or pseudo filename

;%4 is the variable to search for and return in %. %3

;%5 is for lock control. By default getGlobalVar uses a lock to return a value. In some cases you may want to

; retrieve a variable (mostly for speed) without needing a lock as long as you are aware of

; any potentional conflicts, that very rarely may occur. Set this param to NOLOCK to access

; global storage without a lock.

;sample usage:

; gosub getGlobalVar 50 MyScript #charid backpackid

; Using global var *50 finds the variable labeled MyScript#charidbackpackid and returns it in %backpackid

;

; gosub getGlobalVar 50 MyScript #charid clothstat NOLOCK

; Using global var *50 find the variable labeled MyScript#charidclothstat and returns it in %clothstat without using a lock

; Warning: do not use *1000. * %1 + 1 is used for locking and there is no *1001!

nameSpace push

nameSpace local #systime , _ , %2 , _ , %3 , _ , %4 , _ , GET

set !lpc #lpc

set #lpc 1000

set !lock %1 , _lock

if ( %0 = 5 ) && ( %5 = NOLOCK )

goto getGlobalVar_skiplock

set !lockcount 0

getGlobalVar_waitforlock:

if * . !lock <> N/A && * . !lock <> #nsname

{

wait 1 4

set !lockcount !lockcount + 1

if !lockcount < 10

goto getGlobalVar_waitforlock

if * . !lock <> N/A

{

set !currentlock * . !lock

if !currentlock = N/A

goto getGlobalVar_waitforlock

str pos !currentlock _

set !strres #strres - 1

str left !currentlock !strres

set !systime #systime - #strres

if !systime < 10000; if over 10 seconds assume a broken lock and take it

{

set !lockcount 0

goto getGlobalVar_waitforlock

}

}

}

set * . !lock #nsname

wait 3 2

if * . !lock <> #nsname

{

set !lockcount 0

goto getGlobalVar_waitforlock

}

getGlobalVar_skiplock:

set !global * . %1

set !varName %2 , ^ , %3 , ^ , %4 , |

str pos !global !varName

set #result #strres <> 0

if #result

{

set !varNamePos #strres

str len !varName

set !delString !varNamePos + #strres - 1

str del !global 1 !delString

set !global #strres

str pos !global |

set !varNamePos #strres - 1

str left !global !varNamePos

set % . %4 #strres

}

if ( %0 < 5 || %5 <> NOLOCK ) && * . !lock = #nsname

set * . !lock N/A

set #lpc !lpc

nameSpace Clear

nameSpace Pop

return #result



Sub putGlobalVar

;ver 1.0 posted 19Feb04 by CEO

;purpose: Allows you to store multiple variables in one global variable unique to

; each player and script. putGlobaVar stores a value into a global variable.



;@returns: #result = #false if variable not found, #true if found

; % . %3 contains variable

;%1 is the global/persistant variable to use

;%2 is the script identifer or pseudo filename

;%3 #charid or other identifier

;%4 is the variable name of the variable to save into the* variable identified in %1

;sample usage:

; gosub putGlovalVar 50 MyScript #chardid backpackid

; Using global var *50 stores/updates the variable labeled MyScript#charidbackpackid with %backpackid

; Warning: do not use *1000. * %1 + 1 is used for locking and there is no *1001!

nameSpace push

nameSpace local #systime , _ , %2 , _ , %3 , _ , %4 , _ , PUT

set !lpc #lpc

set #lpc 1000

set !lock %1 , _lock

set !lockcount 0

putGlobalVar_waitforlock:

if * . !lock <> N/A && * . !lock <> #nsname

{

wait 1 4

set !lockcount !lockcount + 1

if !lockcount < 10

goto putGlobalVar_waitforlock

if * . !lock <> N/A

{

set !currentlock * . !lock

if !currentlock = N/A

goto putGlobalVar_waitforlock

str pos !currentlock _

set !strres #strres - 1

str left !currentlock !strres

set !systime #systime - #strres

if !systime < 10000; if over 10 seconds assume a hung lock and take it

{

set !lockcount 0

goto putGlobalVar_waitforlock

}

}

}

set * . !lock #nsname

wait 4

set !global * . %1

set !varName %2 , ^ , %3 , ^ , %4 , |

str pos !global !varName

if #strres = 0

{

if * . !lock <> #nsname

{

set !lockcount 0

goto putGlobalVar_waitforlock

}

if |CEO*FILESYSTEM| notin !global

set !global |CEO*FILESYSTEM|

set * . %1 !global , !varName , % . %4 , |

set * . !lock N/A

set #lpc !lpc

nameSpace clear

nameSpace pop

return #true

}

set !varNamePos #strres

str len !varName

set !splitString !varNamePos + #strres - 1

str left !global !splitstring

set !globalPart1 #strres

str del !global 1 !splitString

set !global #strres

str len !global

set !globalLen #strres

str pos !global |

set !splitString !globalLen - #strres + 1

str right !global !splitstring

set !global #strres

if * . !lock <> #nsname

{

set !lockcount 0

goto putGlobalVar_waitforlock

}

set * . %1 !globalPart1 , % . %4 , !global

set * . !lock N/A

set #lpc !lpc

nameSpace clear

nameSpace pop

return #true





Sub delGlobalVar

;ver 1.0 posted 19Feb04 by CEO

;purpose: Allows you to delete a variable out of the globalvar pool unique to

; each player and script. delGlobaVar deletes a global variable in a * variable.



;@returns: #result = #false if variable not found, #true if deleted

;

;%1 is the global/persistant variable to use

;%2 is the script identifer or pseudo filename

;%3 is #charid or other identifier

;%4 is the variable name of the variable to save into the* variable identified in %1

;sample usage:

; gosub delGlovalVar 50 MyScript #charid backpackid

; Using global var *50 deletes the variable label MyScript#charidbackpackid and it's associated value.

; Warning: do not use *1000. * %1 + 1 is used for locking and there is no *1001!

nameSpace push

nameSpace local #systime , _ , %2 , _ , %3 , _ , %4 , _ , DEL

set !lpc #lpc

set #lpc 1000

set !lock %1 , _lock

set !lockcount 0

delGlobalVar_waitforlock:

if * . !lock <> N/A && * . !lock <> #nsname

{

wait 1 4

set !lockcount !lockcount + 1

if !lockcount < 10

goto delGlobalVar_waitforlock



if * . !lock <> N/A

{

set !currentlock * . !lock

if !currentlock = N/A

goto delGlobalVar_waitforlock

str pos !currentlock _

set !strres #strres - 1

str left !currentlock !strres

set !systime #systime - #strres

if !systime < 10000; if over 10 seconds assume a broken lock and take it

{

set !lockcount 0

goto delGlobalVar_waitforlock

}

}



}

set * . !lock #nsname

wait 4

set !global * . %1

set !varName %2 , ^ , %3 , ^ , %4 , |

str pos !global !varName

set #result #strres <> 0

if #result

{

set !varNamePos #strres

str len !varName

set !splitString !varNamePos + #strres - 1

set !delString !varNamePos - 1

str left !global !delString

set !globalPart1 #strres

str del !global 1 !splitString

set !global #strres

str pos !global |

set !delString #strres

str del !global 1 !delString

if * . !lock <> #nsname

{

set !lockcount 0

goto delGlobalVar_waitforlock

}

set * . %1 !globalPart1 , #strres

}

if * . !lock = #nsname

set * . !lock N/A

set #lpc !lpc

nameSpace clear

nameSpace pop

return #result





;===================================================================

;---------------------------Menus-----------------------------------

;===================================================================



sub showEUOMenu1

menu Clear

menu Window Transparent 80

menu Window Title Gen's Auto Item Buyer

menu Window Color BtnShadow

m


--------------------
Прямые руки- это паталогия!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 27.4.2024, 8:56
Designed by Nickostyle