Yoko
http://forum.yoko.com.ua/

Как сравнить 2 переменные???
http://forum.yoko.com.ua/viewtopic.php?f=20&t=1794
Page 1 of 1

Author:  Chris [ 2004-10-30 23:17:59 ]
Post subject:  Как сравнить 2 переменные???

Я писал скрипт на мининг и столкнулся с проблемой. В начале я ввожу переменные "VAR my, ny". Это координаты. Вот начало скрипта, он начинает копать сверху вниз, при етом после каждого шага делает:
- my = UO.GetY("self")
Когда он доходит до предела он должен сравнить старые координаты с новыми и если они совпали, шагнуть в сторону. Я делаю это так:
- if my = ny then
или если не вводить переменную "ny":
- if my = ('UO.GetY("self")') then
Я недавно познакомился с Inject'ом поэтому прошу помощи.

Author:  Ex-Brodyaga [ 2004-10-30 23:56:41 ]
Post subject: 

нужно писат Не if (a=b) , а if (a==b) так как а=b присваивает значению а значение b, и не является логическим оператором :)

Author:  Chris [ 2004-10-31 00:38:43 ]
Post subject: 

Что-то скрипт всеравно не работает. Вот он. Не судите строго.

Sub Mining2()
VAR oldweight = UO.weight
VAR t=1
VAR my, ny

UO.print('Select a Pickaxe!')
UO.exec('addobject Pickaxe')
while uo.targeting()
wait(100)
wend

UO.print('Select a Shovel!')
UO.exec('addobject Shovel')
while uo.targeting()
wait(100)
wend

Minedown:
my = UO.GetY("self")
while not UO.Hidden()
UO.Warmode("0")
UO.UseSkill("Hiding")
wait(1000)
wend
UO.useobject('Pickaxe')
UO.waittargettile('tilenum 321,239')
Wait(3000)
If uo.weight > oldweight then
oldweight = uo.weight
Wait(5000)
Else
UO.useobject('Shovel')
UO.waittargettile('tilenum 321,239')
Wait(8000)
oldweight = uo.weight
Endif
UO.Press(34)
ny = UO.GetY("self")
If my == ny then
UO.press(33)
goto Mineup
Endif
Wait(1000)
If uo.weight > 625 then
goto end
Endif
goto Minedown

Mineup:
my = UO.GetY("self")
while not UO.Hidden()
UO.Warmode("0")
UO.UseSkill("Hiding")
wait(1000)
wend
UO.useobject('Pickaxe')
UO.waittargettile('tilenum 321,239')
Wait(3000)
If uo.weight > oldweight then
oldweight = uo.weight
Wait(5000)
Else
UO.useobject('Shovel')
UO.waittargettile('tilenum 321,239')
Wait(8000)
oldweight = uo.weight
Endif
UO.Press(32)
ny = UO.GetX("self")
If my == ny then
UO.press(33)
goto Minedown

end:
End sub

Author:  Chris [ 2004-10-31 01:39:19 ]
Post subject: 

После небольших изменений получилось вот так:

Sub Mining2()
VAR oldweight = UO.weight
VAR t=1
VAR my, ny

UO.print('Select a Pickaxe!')
UO.exec('addobject Pickaxe')
while uo.targeting()
wait(100)
wend

UO.print('Select a Shovel!')
UO.exec('addobject Shovel')
while uo.targeting()
wait(100)
wend

Minedown:
while not UO.Hidden()
UO.Warmode("0")
UO.UseSkill("Hiding")
wait(1000)
wend
my = UO.GetY("self")
UO.useobject('Pickaxe')
UO.waittargettile('tilenum 325,240')
Wait(3000)
If uo.weight > oldweight then
oldweight = uo.weight
Wait(5000)
Else
UO.useobject('Shovel')
UO.waittargettile('tilenum 325,240')
Wait(8000)
oldweight = uo.weight
Endif
UO.Press(34)
Wait(2000)
ny = UO.GetY("self")
If my == ny then
UO.press(35)
UO.press(35)
Wait(1000)
goto Mineup
Endif
If uo.weight > 625 then
goto end
Else
goto Minedown
Endif

Mineup:
while not UO.Hidden()
UO.Warmode("0")
UO.UseSkill("Hiding")
wait(1000)
wend
my = UO.GetY("self")
UO.useobject('Pickaxe')
UO.waittargettile('tilenum 325,240')
Wait(3000)
If uo.weight > oldweight then
oldweight = uo.weight
Wait(5000)
Else
UO.useobject('Shovel')
UO.waittargettile('tilenum 325,240')
Wait(8000)
oldweight = uo.weight
Endif
UO.Press(36)
Wait(2000)
ny = UO.GetY("self")
If my == ny then
UO.press(35)
UO.press(35)
Wait(1000)
goto Minedown
Else
goto Mineup
Endif

end:
End sub

Но теперь my == ny ВСЕГДА! Как этого избежать?

Author:  Ex-Brodyaga [ 2004-10-31 09:07:59 ]
Post subject: 

ну потому что Uo.Press(34) двигает тебя не по оси Y, а по Х

Code:
sub main()
UO.Print(STR(UO.GetY('self')))
wait(500)
UO.Press(34)
wait(500)
UO.Press(34)
UO.Print(STR(UO.GetY('self')))
end sub


проверь сам :) Надо GetX или двигайся по У

Author:  Chris [ 2004-10-31 10:57:19 ]
Post subject: 

Короче, можешь написать как будет правильно весь скрипт. Plzzzz! А то я всеравно не понял где у меня ошибка. И еще можешь объяснить в какие стороны двигается чар когда UO.Press(32), UO.Press(33), UO.Press(34), UO.Press(35). И еще если есть варианты то какие? И как можно объяснить Inject'у, чтобы чар двигался на определённые координаты? (если это возможно)

Author:  Ex-Brodyaga [ 2004-10-31 12:38:07 ]
Post subject: 

Неее родной, это уже ты сам учись писать. Нам нужны новые люди в массах :)

Author:  AGRS [ 2004-10-31 15:43:51 ]
Post subject: 

Ex-Brodyaga wrote:
Неее родной, это уже ты сам учись писать. Нам нужны новые люди в массах :)


Надеюсь это не относится к твоей аватарке?

Author:  Chris [ 2004-10-31 17:33:30 ]
Post subject: 

А где можно про Inject почитать, кроме yoko.netroof.net/help?? :?: Там нет таких команд. :?

Author:  AGRS [ 2004-10-31 19:48:51 ]
Post subject: 

Chris wrote:
А где можно про Inject почитать, кроме yoko.netroof.net/help?? :?: Там нет таких команд. :?


А документацию слабо скачать?

Author:  Ex-Brodyaga [ 2004-10-31 19:53:16 ]
Post subject: 

AGRS wrote:
Ex-Brodyaga wrote:
Неее родной, это уже ты сам учись писать. Нам нужны новые люди в массах :)


Надеюсь это не относится к твоей аватарке?


Тсссс, жертву спугнёшь :wink:

Author:  drcrazy [ 2004-11-01 15:46:02 ]
Post subject: 

Chris wrote:
А где можно про Inject почитать, кроме yoko.netroof.net/help?? :?: Там нет таких команд. :?


Look at scripting.txt at injection folder.

UO.Press send a key code to UO window.

So U just need to find what 33, 34 and so on mean.

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/