• Доступ на форум только по приглашениям!
  • По техническим причинам работа шарда остановлена на неопределенное время. Ожидаем исправления накопившихся ошибок.

Скининг (резка шкуры)

Полковник

Старый хрыч
sub skining()
var scissors = "0x0F9F"
var where = 'lootbug'
uo.FindType('0x1079','-1',where)
if uo.waiting() then
uo.canceltarget()
endif
if uo.FindCount('finditem') > 0 then
uo.waitTargetObject('finditem')
uo.UseObject('scissors')
wait(200)
endIf
end sub


не режет, находит шкуру, и отменяет таргет.
научите резать шкуру.



Да что уж там говорить, ДАЖЕ ЭТО не работает. про саб, энд саб не надо ля-ля.


var hide = "0x1079"
uo.waitTargetObject('hide')
uo.UseObject('scissors')
wait(630)


З.Ы. помогите с прогой, для переноса инжекта на одно ядро.
 
Последнее редактирование:

Rene

Banned
Лолшто?

PHP:
sub skining()
  var scissors = "0x0F9F"   //Указываем id ножниц
  var where = 'lootbug'     //назначаем текстовую переменную
  uo.FindType('0x1079','-1',where) //ищем в лутошибке тип предмета 0x...  (loot-сумка,bug-ошибка)
  if uo.waiting() then   //если инжа ждет прицела
   uo.canceltarget()   //то отменяем прицел к херам :D
  endif
  if uo.FindCount('finditem') > 0 then //если нашлось что-нибудь
   uo.waitTargetObject('finditem')   //то ловушка прицела на это что-нибудь
   uo.UseObject('scissors')   //юзаем объект ножницы со вкладки в инже "objects"
   wait(200)  //ждем пятую долю секунды (нахрена?)
  endIf
end sub
Штоето?

PHP:
var hide = "0x1079"  //вешаем переменную типа hide со значеним 0x... 
uo.waitTargetObject('hide') //ждём прицел на ... ох-ё...вешаем таргет на тип предмета, при том, что нужно указывать id
uo.UseObject('scissors')  //юзаем предмет scissors со вкладки objects
wait(630)
второй скорее так:

PHP:
sub cutAnyHides()
 uo.findType('0x1079',-1,'lootbug')
 if uo.findCount() > 0 then
  uo.waitTargetObject('finditem')
  uo.useObject('scissors')
 end if
end sub
причем создаем сперва lootbug, а потом scissors, на вкладке инжи Objects
 
Последнее редактирование:

Полковник

Старый хрыч



Рене, я конечно понимаю, что ты у нас любишь указывать на ошибки и т.д.
может пишу я и не столь рационально, но суть в том, что обычно работает.

А со скинингом у меня проблема.
Твой тоже, как видишь, не работает.
Вэйттаргетобжект - ты говоришь, что текстовая переменная, а надо на айди,
епту, ты в каком веке живешь? Ну если тебе стало бы проще, я использовал даже ВэйттрагетобжектТайп.

Спасибо, что отозвался помочь. Пока не получается, давай еще какие нибудь пути поищем.
Странно, может у меня в инжекте проблемы, хотя пвп и все остальное работает вполне отлично.


Я так понимаю, что у меня обжектс хромает.
там все есть, ножницы, лутбаг и т.д.
Вообще не вижу проблем в скрипте, ловушка прицел есть, объекты есть, все есть.
Я замешательстве...
 
Последнее редактирование:

Rene

Banned
Удивительное и невероятное.... вот чтобы не плодить такие темы, а так же не отвечать на вопросы "как поставить клиент", "У мну не пашет инжа" я сделал сборку клиента
 

Полковник

Старый хрыч
Удивительное и невероятное.... вот чтобы не плодить такие темы, а так же не отвечать на вопросы "как поставить клиент", "У мну не пашет инжа" я сделал сборку клиента
так дело в том, что все отлично пашет.
А ловушка прицел на шкуру - нет. О_О
Да, это удивительное и невероятное.
 

Rene

Banned
это кривой модуль скриптов и инжи
 

Mirage

Newbie Player
var scissors = "0x0F9F" //Указываем id ножниц Так то тут Type как бы :)
var where = 'lootbug' //назначаем текстовую переменную Зачем? Тут надо ID контейнера
Зачем задавать ножницы в закладке объекты когда просто тип можно указать? Если бы они суперраритетные нуби были то да - объекты проще.

Если на шарде шкуры режутся не только в собственном паке но и в сундуках то скрипт принимает вот такой вид:
Код:
#[COLOR=#000000][COLOR=#FF8000][COLOR=SeaGreen][COLOR=Black]Ножницы в паке, шкура в сундуке.[/COLOR][/COLOR][/COLOR][/COLOR]
sub skining()
    var scissors = '0x0F9F'
    var where = 'ID сундука где шкуры'
    uo.FindType('0x1079','-1',where)
    if uo.FindCount() > 0 then
        uo.waitTargetObject('finditem')
        uo.UseType(scissors)
    endIf
end sub


Если шкура/кожа в паке то еще проще
Код:
[COLOR=#000000]
sub skining()
    var scissors = '0x0F9F'
    var hides = '0x1079'
    var where = 'ID сундука где шкуры'

    while UO.Count( hides )>0
        uo.waittargettype( hides )
        uo.usetype( Scissors )
        wait(300)
    wend
end sub
[/COLOR]

 

Zoker

modem 16 bit
Mirage, а чтоб брал открывал тело, доставал кожу в бекпек, резал можешь?
 

Mirage

Newbie Player
перед открытием тела его надо резать или шкура там по умолчанию?
 

Полковник

Старый хрыч
Mirage, а чтоб брал открывал тело, доставал кожу в бекпек, резал можешь?
Омг... все тупо просто. вставь в сатолут Скининг ()
Отсылка к другому скирпту и сделай кол-о раз 2 на всяк случай.
У мнея тупо скининг на отдельнцю кнопку.
 

Mirage

Newbie Player
Если просто резалка луталка кожи и резка кожи то скрипт выглядит вот так:

Код:
var body = '0x2006'
var dagger = '0x0F51'
VAR Scissors = '0x0F9E'
VAR hides = '0x1078'
var corpse
Sub REZ()
    UO.Set('quiet','1')
    uo.set('finddistance', '3')
    uo.findtype(body, -1, 'ground')
    if uo.findcount() and Uo.GetDistance( 'finditem' ) < 3  then
        UO.SetArm('Weapon')
        uo.warmode(0)
        wait(500)
        corpse = uo.getSerial('finditem')
        UO.WaitTargetObject(corpse)
        UO.UseType(dagger)
        wait(1000)
        UO.Arm('Weapon')
        Loot()
        uo.warmode(1)
    endif
    UO.Set('quiet','0')
end sub
Sub Loot()
    UO.Set('quiet','1')
    uo.set('finddistance', '3')
    uo.findtype(body, -1, 'ground')
    IF uo.findcount() and Uo.GetDistance( 'finditem' ) <= 4 then
        corpse = uo.getSerial('finditem')
        uo.useobject(corpse)
        wait(300)
        UO.FindType( hides, -1, corpse )
        if  UO.FindCount() then
            uo.moveitem('finditem','0','backpack')
            wait(300)
        endif
        UO.Hide(corpse)
        UO.Ignore(corpse)
    endif
    If UO.Count ( Scissors ) > 0 Then
        While UO.Count( hides )>0
            uo.waittargettype( hides )
            uo.usetype( Scissors )
            wait(300)
        wend
    EndIf
    UO.Set('quiet','0')
endsub
PS это обрезка от большого скрипта лута - но раз попросили то попросили :)
 

Zoker

modem 16 bit
чет не вкурю, тут 2 саба, и еще приложение сверху.. получается это подсабы одного или это 2 разных на лут и на резку?
 

Полковник

Старый хрыч
Если просто резалка луталка кожи и резка кожи то скрипт выглядит вот так:

Код:
var body = '0x2006'
var dagger = '0x0F51'
VAR Scissors = '0x0F9E'
VAR hides = '0x1078'
var corpse
Sub REZ()
    UO.Set('quiet','1')
    uo.set('finddistance', '3')
    uo.findtype(body, -1, 'ground')
    if uo.findcount() and Uo.GetDistance( 'finditem' ) < 3  then
        UO.SetArm('Weapon')
        uo.warmode(0)
        wait(500)
        corpse = uo.getSerial('finditem')
        UO.WaitTargetObject(corpse)
        UO.UseType(dagger)
        wait(1000)
        UO.Arm('Weapon')
        Loot()
        uo.warmode(1)
    endif
    UO.Set('quiet','0')
end sub
Sub Loot()
    UO.Set('quiet','1')
    uo.set('finddistance', '3')
    uo.findtype(body, -1, 'ground')
    IF uo.findcount() and Uo.GetDistance( 'finditem' ) <= 4 then
        corpse = uo.getSerial('finditem')
        uo.useobject(corpse)
        wait(300)
        UO.FindType( hides, -1, corpse )
        if  UO.FindCount() then
            uo.moveitem('finditem','0','backpack')
            wait(300)
        endif
        UO.Hide(corpse)
        UO.Ignore(corpse)
    endif
    If UO.Count ( Scissors ) > 0 Then
        While UO.Count( hides )>0
            uo.waittargettype( hides )
            uo.usetype( Scissors )
            wait(300)
        wend
    EndIf
    UO.Set('quiet','0')
endsub
PS это обрезка от большого скрипта лута - но раз попросили то попросили :)

Мираж, ты отличный скриптер, но особенности шарда иные.
во-первых: вар мод отключать не нужно.
во-вторых одевание вепы можно иначе сделать, т.е. чтоб одевал именно то, что уже было в руках, чтоб не создавать объекты.



Забиваь надо Саб ПВМ. Лутит все итемы в трупе. Можешь сделать Дим лут ток шкуры.

PHP:
Sub PVM()
   var body = '0x2006'
   var dagger = '0x0EC3'
   var x = uo.GetGraphic(uo.ObjAtLayer('Rhand')) ; можно еще левую записать, чтобы с луками не париться. 
   var corpse
   uo.set('finddistance', '2')
   uo.findtype(body, -1, 'ground')
   if uo.findcount() and Uo.GetDistance( 'finditem' ) < 2  then
      wait(630)
      corpse = uo.getSerial("finditem")
      UO.WaitTargetObject(corpse)
      UO.UseType(dagger)
      wait(630)
      uo.UseType(x)
      wait(630)
      OpenCorpse()
      getFromBox()
      skining()   ;  советую скниинг просто забить на другую кнопку, т.к. у нас бывает 2 вида шкуры в некоторых мобах. т.е. порежет ток 1, а вторую оставит. 
      UO.ignore(corpse)
      
   endif
end sub

sub getFromBox()
    uo.FindType('-1','-1','lastobject')
    while uo.findcount() 
      uo.grab(0,'finditem') 
      wait(730) 
      uo.FindType('-1','-1','lastobject')
    wend
end sub


sub OpenCorpse()
 uo.set('finddistance','2') 
 uo.findtype('0x2006','-1','ground')
 if uo.findcount() then
  uo.useobject('finditem')
  uo.addobject('lastcorpse','finditem')
 end if
end sub

sub skining()
 uo.findType('0x1079',-1)
 if uo.findCount() > 0 then
  uo.waitTargetObject('finditem')
  uo.useObject('scissors')
 end if
end sub
 

Mirage

Newbie Player
чет не вкурю, тут 2 саба, и еще приложение сверху.. получается это подсабы одного или это 2 разных на лут и на резку?
"приложение сверху" общие переменные использующиеся в обоих скриптах.
1 sub rez - резка. Ищет труп и шинкует его даггером.
2 sub loot - лут кожи и резка ее ножницами в паке.
Если надо сменить ножик, тип кожи все меняется вверху 1 раз.
Надо запускается ,exec Rez

2 Полковник. Ну или так. Один совет (как от игрока сферовых эмуляторов)
в sub getFromBox()
если будешь использовать на людях надо добавить строки
Код:
[COLOR=#000000][COLOR=#007700]var hair

                For hair = 0x203B to 0x204D
                    UO.FindType(hair, -1, corpse)
                    if UO.FindCount() then
                        UO.Ignore('finditem')
                    endif
                next[/COLOR][/COLOR]

Иногда в труп падают волосы которые убивают луталки вида
uo.FindType('-1','-1','lastobject')
Тыкаешь на труп - показывает 1 предмет. Открываешь - пусто.
 
Последнее редактирование:

Полковник

Старый хрыч
"приложение сверху" общие переменные использующиеся в обоих скриптах.
1 sub rez - резка. Ищет труп и шинкует его даггером.
2 sub loot - лут кожи и резка ее ножницами в паке.
Если надо сменить ножик, тип кожи все меняется вверху 1 раз.
Надо запускается ,exec Rez

2 Полковник. Ну или так. Один совет (как от игрока сферовых эмуляторов)
в sub getFromBox()
если будешь использовать на людях надо добавить строки
Код:
[COLOR=#000000][COLOR=#007700]var hair

                For hair = 0x203B to 0x204D
                    UO.FindType(hair, -1, corpse)
                    if UO.FindCount() then
                        UO.Ignore('finditem')
                    endif
                next[/COLOR][/COLOR]

Иногда в труп падают волосы которые убивают луталки вида
uo.FindType('-1','-1','lastobject')
Тыкаешь на труп - показывает 1 предмет. Открываешь - пусто.


спасибище. Я никогда не мог решать такую проблему на сфере, а теперь понял, что это были волосы. )) Спасибо. Ток у нас на Ран УО такой беды нету. как стабильнее ядро и странных глюков, типа итемы в паке невидимой нету. Тут на персонаже флаг вешается видимый серверу.

Кстати, я тебя по аватарке узнал с Йоко инжекшн форума )) Много основ для своих скриптов у тебя спер. гы гы гы.
 

Mirage

Newbie Player
спасибо за теплые слова. Приятно что труд не пропадает зря :i-m_so_happy:

Я тут у вас покручусь, наверное. Всегда хотел поближе с ранкой познакомиться.
 

Полковник

Старый хрыч
спасибо за теплые слова. Приятно что труд не пропадает зря :i-m_so_happy:

Я тут у вас покручусь, наверное. Всегда хотел поближе с ранкой познакомиться.
ну ты интересуйся - я отвечу. вообще ФЛ - это Ран УО традициях Сферы.
просто на площадке Ран УО, т.к. она стабильнее и Ей ПЛЕВАТЬ на переменную на твоем компе.
согласись, рентабельнее создать на Ран УО, чем на устаревшей сфере.
Но тут возникает другой вопрос.
СФера стайл губит прекрасные возможности РанУО. Отключены скиллы и т.д.


Далее, РанУО - это не сферовский синтаксис, а полноценный скриптинг.
т.е. сделать можно что угодно. единственные ограничения - графические.
 

Zoker

modem 16 bit
спасибо за теплые слова. Приятно что труд не пропадает зря :i-m_so_happy:

Я тут у вас покручусь, наверное. Всегда хотел поближе с ранкой познакомиться.
Да, я тебя тоже узнал :) спасибо и от меня.

покрутись конечно, а еще лучше оставайся и тащи народ.. он нам нужен, потенциал у сервера очень большой, а площадка крайне стабильная.

P>S> на инжекш форуме вчера повесил рекламу нашего шарда.
 
Верх