Page 1 of 1

помогите исправить скрипт!

Posted: 2006-05-07 11:30:02
by ДРВ

Code: Select all

sub WS_X_WS() 
; ----------------------------------------------------- 
var LTimer, MyMana 
var mX = UO.GetX('laststatus') 
var mY = UO.GetY('laststatus') 
var mZ = UO.GetZ('laststatus') 
var mT = '400' 
; -- Wall of Stone # 1 -------------------------------- 
if UO.GetX('laststatus') > UO.GetX('self') then 
UO.WaitTargetTile( mT, STR(mX-2), STR(mY), STR(mZ)) 
UO.Cast('Wall of Stone') 
else 
UO.WaitTargetTile( mT, STR(mX+2), STR(mY), STR(mZ)) 
UO.Cast('Wall of Stone') 
endif 
LTimer = UO.Timer() 
MyMana = UO.Mana 
repeat 
wait(1000) 
until UO.Mana < MyMana || UO.Timer() > LTimer+30 
; -- Wall of Stone # 2 -------------------------------- 
if UO.GetY('laststatus') > UO.GetY('self') then 
UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ)) 
UO.Cast('Wall of Stone') 
else 
UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
UO.Cast('Wall of Stone') 
endif 
LTimer = UO.Timer() 
MyMana = UO.Mana 
repeat 
wait(1000) 
until UO.Mana < MyMana || UO.Timer() > LTimer+30 
; -- Fire Field --------------------------------------- 
if UO.GetY('laststatus') > UO.GetY('self') then 
UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ)) 
UO.Cast('Fire Field') 
else 
UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
UO.Cast('Fire Field') 
endif 
end sub
просто сделайте чтоб со скролов кастовал!очень надо!

Posted: 2006-05-07 13:18:18
by ДРВ
ПОМОГИТЕ ПОЖАЛУЙСТА!

Posted: 2006-05-07 13:47:36
by ДРВ
АУУУУУУУУУУУУУ"!

Posted: 2006-05-07 13:50:27
by DerMeister =)
Замени UO.Cast('спелл') на uo.usetype(' тип скроллов для етого спелла')

Posted: 2006-05-07 14:03:54
by ДРВ
Der wrote:Замени UO.Cast('спелл') на uo.usetype(' тип скроллов для етого спелла')
можешь заменить?:( просто я не шарю вообще!

Posted: 2006-05-07 15:05:46
by Scripts Writer

Code: Select all

sub WS_X_WS() 
  ; ----------------------------------------------------- 
  var LTimer, MyMana 
  var mX = UO.GetX('laststatus') 
  var mY = UO.GetY('laststatus') 
  var mZ = UO.GetZ('laststatus') 
  var mT = '400'
  var stone=' тип скрола Wall of stone '
  var fire=' тип скрола Fire Field ' 
  ; -- Wall of Stone # 1 -------------------------------- 
  if UO.GetX('laststatus') > UO.GetX('self') then 
    uo.FindType(stone,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX-2), STR(mY), STR(mZ))  
      uo.UseType(stone) 
      wait(100)
    else
      uo.Print('There are no scrolls! Spell !')
      UO.WaitTargetTile( mT, STR(mX-2), STR(mY), STR(mZ))     
      uo.Cast('Wall of Stone')
    end if
  else 
    uo.FindType(stone,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX+2), STR(mY), STR(mZ)) 
      uo.UseType(stone) 
      wait(100)
    else
      uo.Print('There are no scrolls! Spell !')
      UO.WaitTargetTile( mT, STR(mX+2), STR(mY), STR(mZ)) 
      uo.Cast('Wall of Stone')
    end if
  endif 
  LTimer = UO.Timer() 
  MyMana = UO.Mana 
  repeat 
    wait(1000) 
  until UO.Mana < MyMana || UO.Timer() > LTimer+30 
  ; -- Wall of Stone # 2 -------------------------------- 
  if UO.GetY('laststatus') > UO.GetY('self') then 
    uo.FindType(stone,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ)) 
      uo.UseType(stone) 
      wait(100)
    else
      uo.Print('There are no scrolls! Spell !')  
      UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ))    
      UO.Cast('Wall of Stone') 
    end if
  else 
    uo.FindType(stone,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
      uo.UseType(stone) 
      wait(100)
    else
      uo.Print('There are no scrolls! Spell !')  
      UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
      UO.Cast('Wall of Stone') 
    endif 
  end if
  LTimer = UO.Timer() 
  MyMana = UO.Mana 
  repeat 
    wait(1000) 
  until UO.Mana < MyMana || UO.Timer() > LTimer+30 
  ; -- Fire Field --------------------------------------- 
  if UO.GetY('laststatus') > UO.GetY('self') then 
    uo.FindType(fire,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ)) 
      uo.UseType(fire)
      wait(100)
    else
      uo.Print('There are NO fire field scrolls! Spell !')
      UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ))     
      UO.Cast('Fire Field') 
    end if
  else 
    uo.FindType(fire,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
      uo.UseType(fire)
      wait(100)
    else
      uo.Print('There are NO fire field scrolls! Spell !')
      UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
      UO.Cast('Fire Field') 
    end if
  endif 
end sub
Пропиши типы скролов, если есть они-то кастует с них, если нету то выдаёт месагу, скролов нет и кастует со спелбуки.

Posted: 2006-05-07 15:41:07
by ДРВ
You Must Die wrote:

Code: Select all

sub WS_X_WS() 
  ; ----------------------------------------------------- 
  var LTimer, MyMana 
  var mX = UO.GetX('laststatus') 
  var mY = UO.GetY('laststatus') 
  var mZ = UO.GetZ('laststatus') 
  var mT = '400'
  var stone=' тип скрола Wall of stone '
  var fire=' тип скрола Fire Field ' 
  ; -- Wall of Stone # 1 -------------------------------- 
  if UO.GetX('laststatus') > UO.GetX('self') then 
    uo.FindType(stone,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX-2), STR(mY), STR(mZ))  
      uo.UseType(stone) 
      wait(100)
    else
      uo.Print('There are no scrolls! Spell !')
      UO.WaitTargetTile( mT, STR(mX-2), STR(mY), STR(mZ))     
      uo.Cast('Wall of Stone')
    end if
  else 
    uo.FindType(stone,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX+2), STR(mY), STR(mZ)) 
      uo.UseType(stone) 
      wait(100)
    else
      uo.Print('There are no scrolls! Spell !')
      UO.WaitTargetTile( mT, STR(mX+2), STR(mY), STR(mZ)) 
      uo.Cast('Wall of Stone')
    end if
  endif 
  LTimer = UO.Timer() 
  MyMana = UO.Mana 
  repeat 
    wait(1000) 
  until UO.Mana < MyMana || UO.Timer() > LTimer+30 
  ; -- Wall of Stone # 2 -------------------------------- 
  if UO.GetY('laststatus') > UO.GetY('self') then 
    uo.FindType(stone,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ)) 
      uo.UseType(stone) 
      wait(100)
    else
      uo.Print('There are no scrolls! Spell !')  
      UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ))    
      UO.Cast('Wall of Stone') 
    end if
  else 
    uo.FindType(stone,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
      uo.UseType(stone) 
      wait(100)
    else
      uo.Print('There are no scrolls! Spell !')  
      UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
      UO.Cast('Wall of Stone') 
    endif 
  end if
  LTimer = UO.Timer() 
  MyMana = UO.Mana 
  repeat 
    wait(1000) 
  until UO.Mana < MyMana || UO.Timer() > LTimer+30 
  ; -- Fire Field --------------------------------------- 
  if UO.GetY('laststatus') > UO.GetY('self') then 
    uo.FindType(fire,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ)) 
      uo.UseType(fire)
      wait(100)
    else
      uo.Print('There are NO fire field scrolls! Spell !')
      UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ))     
      UO.Cast('Fire Field') 
    end if
  else 
    uo.FindType(fire,'-1','backpack')
    if uo.Count() > 0 then
      UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
      uo.UseType(fire)
      wait(100)
    else
      uo.Print('There are NO fire field scrolls! Spell !')
      UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ)) 
      UO.Cast('Fire Field') 
    end if
  endif 
end sub
Пропиши типы скролов, если есть они-то кастует с них, если нету то выдаёт месагу, скролов нет и кастует со спелбуки.
а где типы прописать?:( я сразу извиняюсь,просто нихера не понимаю... :(

Posted: 2006-05-07 15:58:18
by Scripts Writer
8 и 9 строка, по русски там написал.

Posted: 2006-05-08 16:39:24
by ДРВ
You Must Die wrote:8 и 9 строка, по русски там написал.
нЕ КАСТУЕТ СО СКРОЛОВ! :(

Posted: 2006-05-08 16:52:13
by DerMeister =)
ДРВ wrote:
You Must Die wrote:8 и 9 строка, по русски там написал.
нЕ КАСТУЕТ СО СКРОЛОВ! :(
И чё дальше? :lol:
Что именно не работает?

Posted: 2006-05-08 16:57:04
by Kynep
Der wrote:
ДРВ wrote:
You Must Die wrote:8 и 9 строка, по русски там написал.
нЕ КАСТУЕТ СО СКРОЛОВ! :(
И чё дальше? :lol:
Что именно не работает?
Знатоки млин...

Code: Select all

uo.FindType(stone,'-1','backpack') 
    if uo.Count() > 0 then
Во первых UO.Count без параметра написанна, а надо хотя бы

Code: Select all

uo.FindType(stone,'-1','backpack') 
    if uo.Count(stone) > 0 then
НО тогда нахера тут поиск!?!?!?
Исправляем:

Code: Select all

uo.FindType(stone,'-1','backpack') 
    if uo.FindCount() > 0 then
Теперь все работает )))

Posted: 2006-05-08 17:29:18
by Grin
Из "знатаков" тут от писывался только твой друг;)
И на хрена тут поиск если дальше используется тип?;)))

Code: Select all

...
uo.FindType(stone,'-1','backpack') 
if uo.Count() > 0 then 
      UO.WaitTargetTile( mT, STR(mX-2), STR(mY), STR(mZ))  
      uo.UseType(stone) 
      wait(100) 
else
...
"Знатоки" блин;)))

Code: Select all

...
if uo.Count(stone) then 
      UO.WaitTargetTile( mT, STR(mX-2), STR(mY), STR(mZ))  
      uo.UseType(stone) 
      wait(100) 
else
...