Yoko

All sides of Injection
It is currently 2024-03-28 13:35:23

All times are UTC+02:00




Post new topic  Reply to topic  [ 203 posts ]  Go to page Previous 15 6 7 8 911 Next
Author Message
 Post subject:
PostPosted: 2006-05-01 18:58:46 
Offline

Joined: 2005-08-19 16:12:23
Posts: 182
StealthOCS wrote:
свой шард.

АОС?


Top
   
 Post subject:
PostPosted: 2006-05-01 22:47:24 
Offline
User avatar

Joined: 2006-03-24 02:40:24
Posts: 32
Location: Odintsovo, Russia
SLAK wrote:
StealthOCS wrote:
свой шард.

АОС?

AOS. Middle-Earth ( http://www.middle-earth.ru или http://middle-earth.netron.ru )

_________________
Qui quaerit, reperit


Top
   
 Post subject:
PostPosted: 2006-05-02 00:07:45 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
Проверь содержание файлов Resource_Map.dat и Resource_Static.dat. Чем черт не шутит, я на АоСе очень давно играл, может там другие типы тайлов у вас в шахтах... Я и АГРС эти файлы на Сфере делали, на Цитадели и на ДРВ.


Top
   
 Post subject:
PostPosted: 2006-05-02 12:32:44 
Offline

Joined: 2005-08-19 16:12:23
Posts: 182
StealthOCS wrote:

Пример:
number asmMapGetTile(number X, number Y, number Map)
последний параметр "number Map" у тя в примере равен нулю, а это обычно миры Фелюка и Траммел, поиграйся с этим параметром :wink: Мне в свое время помогло...


Top
   
 Post subject:
PostPosted: 2006-05-02 23:42:41 
Offline
User avatar

Joined: 2006-03-24 02:40:24
Posts: 32
Location: Odintsovo, Russia
У меня как раз Felucca или Trammel. Пробую в Миноке :(
Code:
UO.Print(STR(UO.asmMapGetTile(INT(x), INT(y), 0)))
- пишет номер (Dec), соответственно в Resource.map он есть (hex).
А вот
Code:
if UO.asmWaitTargetMapTile( 'rock ',INT(x), INT(y) , 0 ) then
   uo.Print('ok')
   endif
- никогда не поисходит :(
Вот мой пример:
Code:
sub Test()
var x,y
While true
   UO.asmTLMapClear()
   UO.asmTLMapOpen('Resource_Map.dat')
   UO.asmTLStaticClear()
   x=UO.GetX()
   y=UO.GetY()
   UO.Print(STR(UO.asmMapGetTile(INT(x), INT(y), 0)))
   if UO.asmWaitTargetMapTile( 'rock ',INT(x), INT(y) , 0 ) then
     uo.Print('ok')
   endif

   While UO.GetX()==x and UO.GetY()==y
    if uo.InJournal('stop') then
      DeleteJournal('stop')
     end if
      Wait(500)
   Wend

Wend
end sub

_________________
Qui quaerit, reperit


Top
   
 Post subject:
PostPosted: 2006-05-02 23:50:11 
Offline
User avatar

Joined: 2005-07-10 21:53:05
Posts: 457
На RunUO фокус с Z равный 0 не проходит, указывай настоящее значение Z. Это не Сфера.


Top
   
 Post subject:
PostPosted: 2006-05-03 02:42:59 
Offline
User avatar

Joined: 2006-03-24 02:40:24
Posts: 32
Location: Odintsovo, Russia
Пробую вот такую конструкцию:
Code:
uo.print((UO.asmTLMapGetLogic(UO.asmMapGetTile(INT(x), INT(y), 0))))

в той же процедуре (см.выше) - пишет, что rock, но if UO.asmWaitTargetMapTile( 'rock',INT(x), INT(y) , 0 ) then - все равно не срабатывает :(

Вторая ночь - разбор полета :(

_________________
Qui quaerit, reperit


Top
   
 Post subject:
PostPosted: 2006-05-03 07:34:44 
Offline

Joined: 2005-08-19 16:12:23
Posts: 182
А какая у тебя версия АСМа? Там в некоторых версиях кажись эти команды не пашут... попробуй версию 412.25 чтоли.


Top
   
 Post subject:
PostPosted: 2006-05-03 09:34:02 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
Code:
if UO.asmWaitTargetMapTile( 'rock ',INT(x), INT(y) , 0 ) then


А почему 'rock '? Пробел-то зачем тут? :shock: Ты две ночи не можешь найти пробел??? :shock: :shock: :shock: :shock:


Top
   
 Post subject:
PostPosted: 2006-05-03 21:18:42 
Offline
User avatar

Joined: 2006-03-24 02:40:24
Posts: 32
Location: Odintsovo, Russia
Без пробела :)
Это при редактировании видимо пробел нажал :)

_________________
Qui quaerit, reperit


Top
   
 Post subject:
PostPosted: 2006-05-03 22:25:55 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
Ну что ж, мне нужна статистика. На АоС я не пойду, клиент ставить не хочу, но все же хотел бы услышать еще от кого-нибудь, работает ли у него новая длл-ка с файлами карты. На других клиентах. Насчет АоСа передам АГРСу, но тут решения быстрее всего просто не будет, так что экспериментируй, пробуй.


Top
   
 Post subject:
PostPosted: 2006-05-03 23:43:53 
Offline
User avatar

Joined: 2006-03-24 02:40:24
Posts: 32
Location: Odintsovo, Russia
Жаль, но у меня не работает именно UO.asmWaitTargetMapTile( 'rock',INT(x), INT(y) , 0 ).
:(
У кого нить это работает???

_________________
Qui quaerit, reperit


Top
   
 Post subject:
PostPosted: 2006-05-03 23:56:37 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
StealthOCS wrote:
Жаль, но у меня не работает именно UO.asmWaitTargetMapTile( 'rock',INT(x), INT(y) , 0 ).
:(
У кого нить это работает???


Я лично еще последнюю длл не тестил. Обязательно буду, но когда - вот в чем вопрос. Времени не хватает катастрофически... :cry:

ЗЫ: Попробуй аналогичную команду на статику, в лесу, в простом скрипте на ламбер. Просто интересно, это все кардинально или только с картой связано.


Top
   
 Post subject:
PostPosted: 2006-05-04 00:56:31 
Offline

Joined: 2004-09-19 06:19:12
Posts: 20
Такаяже проблема возникла и у меня, на дрв. Пробовал и скартой и со статикой.

Code:
 UO.Print(STR(UO.asmMapGetTile(INT(x), INT(y), 0))) 

Выдаёт всё нормально, совпадает с тем что есть в Resource_map.dat(конечно после перевода в hex).
А вот
Code:
 UO.asmWaitTargetMapTile( 'rock',INT(x), INT(y) , 0 ). 

и
Code:
UO.asmWaitTargetStaticTile('tree', X, Y, 0) 

Выдают 0.


Top
   
 Post subject:
PostPosted: 2006-05-04 02:07:17 
Offline
User avatar

Joined: 2006-03-24 02:40:24
Posts: 32
Location: Odintsovo, Russia
Вот, вот...
Я не один :(

_________________
Qui quaerit, reperit


Top
   
 Post subject:
PostPosted: 2006-05-04 06:51:32 
Offline

Joined: 2005-04-03 11:15:40
Posts: 11
Сам макрос запускается, но работает ужасно медленно и деревья не видит. Шаг, 10 секунд пауза.


Top
   
 Post subject:
PostPosted: 2006-05-04 07:52:17 
Offline
User avatar

Joined: 2005-07-10 21:53:05
Posts: 457
Edred wrote:
StealthOCS wrote:
Жаль, но у меня не работает именно UO.asmWaitTargetMapTile( 'rock',INT(x), INT(y) , 0 ).
:(
У кого нить это работает???


Я лично еще последнюю длл не тестил. Обязательно буду, но когда - вот в чем вопрос. Времени не хватает катастрофически... :cry:

ЗЫ: Попробуй аналогичную команду на статику, в лесу, в простом скрипте на ламбер. Просто интересно, это все кардинально или только с картой связано.



Это не баг, это фича...


Quote:
Дополнительные ловушки прицелов:
В ASM реализованы несколько дополнительных ловушек прицелов. Практически все их можно заменить громоздкими функциями, но делать это следует только в том случае если вас не устраивает их функциональность. Такое может быть на некоторых шардах. Но лучше не быть эгоистом и предварительно обсудить со мной возможности их модернизации.

number asmWaitTragetMapTile(string LogicType, number X, number Y, number Map)
Если ячейка карты Map в координатах X,Y принадлежит логическому типу LogicType по таблице карты, функция установит ловушку прицела UO.WaitTargetTile('0',STR(X),STR(Y),STR(UO.asmMapGetZ(X,Y))) и вернет 1. В противном случае функция вернет 0.
Функция не будет работать в тех местах, где персонаж находится ниже уровня карты и всегда будет возвращать 0. Например в шахтах. Это сделано для вашей собственной безопасности, поскольку ни один трезвый ГМ не пройдет мимо персонажа, копающего потолок в шахте.

number asmWaitTragetStaticTile(string LogicType, number X, number Y, number Map)
Если на карте Map в координатах X,Y есть статичный объект, принадлежащий логическому типу LogicType по таблице статики, функция установит на него ловушку прицела UO.WaitTargetTile(***) и вернет 1. В противном случае функция вернет 0.


Code:
if UO.asmTLMapGetLogic(UO.asmMapGetTile(X,Y,0))=='water' then; Если у нас тут водичка
   UO.WaitTargetTile(STR(0),STR(X),STR(Y),STR(UO.asmMapGetZ(X,Y)); Устанавливаем на нее прицел
   UO.UseType(FishingPole); Используем удочку
   wait(5000); Ждем клева :)
endif


Top
   
 Post subject:
PostPosted: 2006-05-04 22:02:29 
Offline

Joined: 2006-03-10 19:24:12
Posts: 30
так когда появится долгожданная версия асма???


Top
   
 Post subject:
PostPosted: 2006-05-05 08:09:50 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
Koh wrote:
так когда появится долгожданная версия асма???


Это ты про что? Версию, которой можно пользоваться, я выложил, работу с ини-файлами она поддерживает. Теперь собираю статистику работы по ней, сам буду еще тестить. Потом все замечания передам АГРСу, он поправит и тогда уже будет релиз. Чем меньше вы даете инфы о том, что работает или не работает, тем позже будет финальная версия.


Top
   
 Post subject:
PostPosted: 2006-05-05 16:26:31 
Offline
User avatar

Joined: 2006-03-24 02:40:24
Posts: 32
Location: Odintsovo, Russia
Приношу свои извинения по поводу поста о неработающих функциях в АСМ'е!!!
Все решилось после написания следующего кода (см.ниже)
1. Необходимо удалить лишние пробелы в файлах с ресурсами - и все встает на свои места.
2. MapGetTile смотрит на тайл находящийся на высоте MapGetZ, т.е. если вы в пещере - то он смотрит на верх горы (грубо говоря)
3. А amsWaitTargetMapTile, как я понял смотрит не на высоту MapGetZ, а на текущую, из-за этого хоть и TLMapGetLogic возвращает 'rock', но прицел не устанавливается.

ВСЕМ ОГРОМНОЕ СПАСИБО

Code:
sub testMAP()
    var X,Y,dx,dy,mgz,mgt,CanMine,nmap
    UO.asmTLMapOpen('Resource_Map.dat')
    UO.asmTLStaticOpen('Resource_Static.dat')
    While not uo.Dead()
    X=UO.GetX()
    Y=uo.GetY()
    dx=uo.GetX()
    dy=uo.GetY()
    mgz=uo.asmMapGetZ( X, Y, 0)
    mgt=uo.asmMapGetTile( X, Y, 0)
    UO.Print('--------------------------------')
    UO.Print('asmMapGetZ = '+str(mgz))
    UO.Print('asmMapGetTile = '+str(mgt))
    UO.Print('asmTLMapGetLogic = -'+uo.asmTLMapGetLogic(mgt)+'-')
        For nmap=0 to 3
            CanMine=UO.asmWaitTargetMapTile('rock',UO.GetX(),UO.GetY(),nmap)
                if CanMine Then
                    uo.Print('!asmWaitTargetMapTile'+str(nmap)+' - Ok')
                    uo.canceltarget()
                else
                    ;uo.Print('asmWaitTargetMapTile'+str(nmap)+' - Error')
                endif
            CanMine=UO.asmWaitTargetMapTile('rock ',UO.GetX(),UO.GetY(),nmap)
                if CanMine Then
                    uo.Print('!asmWaitTargetMapTile with space'+str(nmap)+' - Ok')
                    uo.canceltarget()
                else
                    ;uo.Print('asmWaitTargetMapTile with space'+str(nmap)+' - Error')
                endif
            CanMine=UO.asmWaitTargetStaticTile('rock',UO.GetX(),UO.GetY(),nmap)
               if CanMine Then
                    uo.Print('!!asmWaitTargetStaticTile'+str(nmap)+' - Ok')
                    uo.canceltarget()
                else
                    ;uo.Print('asmWaitTargetStaticTile'+str(nmap)+' - Error')
                endif
            CanMine=UO.asmWaitTargetStaticTile('rock ',UO.GetX(),UO.GetY(),nmap)
               if CanMine Then
                    uo.Print('!!asmWaitTargetStaticTile with space'+str(nmap)+' - Ok')
                    uo.canceltarget()
                else
                    ;uo.Print('asmWaitTargetStaticTile with space'+str(nmap)+' - Error')
                endif
        Next
    UO.Print('--------------------------------')
        while dx==X and dy==Y
        wait(100)
        dx=uo.GetX()
        dy=uo.GetY()
        WEnd
    WEnd


end sub

_________________
Qui quaerit, reperit


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 203 posts ]  Go to page Previous 15 6 7 8 911 Next

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 14 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited