v 1.1
* Косметические изменения
* текст теперь забивается в массив в 1 строчку с условным разделителем...
===============================================
Code: var Chest='0x4004428A' sub Fan() var Anekdot=0, Stix=0, Text_1=50, Text_2=30, Check, ID_Player var Anekdot_Max=Server('info_anekdot',0), Stix_Max=Server('info_stix',0) var Message="Расскажу за инги\руду\армор: Объявление - 8 шт, Анекдот - 4 шт, Стишок - 3 шт, Расписание Турнира - 2 шт, Время - 1 шт."
UO.Set('grabdelay','500') UO.Ignore(Chest) REPEAT If UO.Journal('0')=="status" and Text_2 >= 30 Then UO.FontColor('0x0025') UO.Msg("Последние обновление(10.09.05), След. Анек("+str(Anekdot)+"), След Стих("+str(Stix)+")") Text_2 = 0 Else Text_2 = Text_2+1 If Text_2 > 35 Then Text_2 = 30 End If End If If Text_1 >= 50 Then ; 54 = (27 sec) ;UO.FontColor('0x0064') ;UO.Msg("AUTO-SYSTEM") ;Wait(1000) UO.FontColor('0x0385') UO.Msg(Message) Text_1 = 0 Else Text_1 = Text_1+1 End If If UO.TradeCount() Then UO.FontColor('0x0064') Search('Preview') UO.Msg("Жми галочку...") REPEAT Wait(500) Until UO.TradeCheck('n','right','1') or UO.TradeCount()==0 If UO.TradeCount() Then ID_Player = UO.TradeOpponent('n') UO.TradeCheck('n','left',1) Wait(2500) REPEAT Check=Search('All') If Check<>0 Then If Check==1 Then Server('time_now',0) Else If Check==2 Then UO.FontColor('0x0025') UO.Msg("Р А С П И С А Н И Е") Wait(2500) Server('turnir_now',0) Else If Check==3 Then Stix = Stix+1 If Stix > Stix_Max Then Stix = 1 End If UO.FontColor('0x0025') UO.Msg("С Т И Ш О К ("+str(Stix)+".)") Wait(2500) Server('stix',Stix) Else If Check==4 Then Anekdot = Anekdot+1 If Anekdot > Anekdot_Max Then Anekdot = 1 End If UO.FontColor('0x0025') UO.Msg("А Н Е К Д О Т ("+str(Anekdot)+".)") Wait(2500) Server('anekdot',Anekdot) Else If Check==5 Then UO.FontColor('0x0025') UO.Msg("ОБЪЯВЛЕНИЕ") Wait(2500) Declaration(ID_Player) Else If Check==6 Then UO.FontColor('0x0385') UO.Msg("БОЛЬШОЕ СПАСИБО !!!") End If End If End If End If End If End If End If Until Check==0 Search('Drop') Text_1 = 14 End If End If Wait(500) Until UO.Dead() end sub
Sub Search(Mode) var Color, Select ;================================================================== ; И Т Е М Ы Д Л Я П Е Р Е Б О Р А! ;------------------------------------------------------------------ Dim Items[15] Items[0] = 14 Items[1] = '0x1412' ; Plate Helm Items[2] = '0x1413' ; Platemail Gorget Items[3] = '0x1415' ; Platemail Items[4] = '0x1411' ; Platemail Legs Items[5] = '0x1410' ; Platemail Arms Items[6] = '0x1414' ; Platemail Gauntlets Items[7] = '0x19B7' ; 1 ore Items[8] = '0x19BA' ; 2 ore Items[9] = '0x19B8' ; 3 ore Items[10] = '0x19B9' ; 4 and more ore Items[11] = '0x1BEF' ; Ingots Items[12] = '0x0F14' ; Guild Credit Items[13] = '0x0F29' ; Diamond Items[14] = '0x1870' ; Silver ball
Dim ColorItems[5] ColorItems[0] = 4 ColorItems[1] = '0x0486' ; Magma ColorItems[2] = '0x079E' ; Sandrock ColorItems[3] = '0x0492' ; Ancient ColorItems[4] = '0x0495' ; Mystic
If Mode=='Preview' Then For Color = 1 TO ColorItems[0] For Select = 1 TO 6 UO.FindType(Items[Select],ColorItems[Color],UO.TradeContainer('right')) If UO.FindCount() Then UO.FontColor('0x0064') If Select==1 Then ; Шлем UO.Msg("Цена Армора: СТИШОК") Else If Select==2 Then ; Горгет UO.Msg("Цена Армора: РАСПИСАНИЕ") Else If Select==3 Then ; Пузо UO.Msg("Цена Армора: АНЕКДОТ") Else If Select==4 Then ; Ноги UO.Msg("Цена Армора: АНЕКДОТ") Else If Select==5 Then ; Рукова UO.Msg("Цена Армора: АНЕКДОТ") Else If Select==6 Then ; Перчатки UO.Msg("Цена Армора: СТИШОК") End If End If End If End If End If End If End If Next Next End If If Mode=='All' Then For Color = 1 TO ColorItems[0] For Select = 1 TO 11 UO.FindType(Items[Select],ColorItems[Color],'-1') If UO.FindCount() Then If Select==7 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 1 Else If Select==8 or Select==2 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 2 Else If Select==1 or Select==6 or Select==9 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 3 Else If Select==3 or Select==4 or Select==5 or Select==10 Then If Select==10 and UO.GetQuantity('finditem')>=8 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 5 Else UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 4 End If Else If Select==11 Then If UO.GetQuantity('finditem')==1 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 1 Else If UO.GetQuantity('finditem')==2 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 2 Else If UO.GetQuantity('finditem')==3 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 3 Else If UO.GetQuantity('finditem')==4 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 4 Else If UO.GetQuantity('finditem')>=10 Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 5 End If End If End If End If End If End If End If End If End If End If End If Next Next For Select = 12 TO 14 UO.FindType(Items[Select],'-1','-1') If UO.FindCount() Then UO.Forget('finditem') UO.MoveItem('finditem','all',Chest) return 6 End If Next return 0 End If If Mode=='Drop' Then For Select = 7 TO 11 UO.FindType(Items[Select],'0x0000','-1') If UO.FindCount() Then UO.Drop('all','0','0','0','finditem') UO.FontColor('0x0385') UO.Msg("Хе-Хе-Хе Айрон !!!") End If Next REPEAT UO.FindType('-1','-1','-1') If UO.FindCount() Then UO.Drop('all','0','0','0','finditem') If UO.InJournal("It doesn't belong to you!") Then UO.UseObject('finditem') REPEAT Wait(500) Until UO.InJournal("Get off your dirty hands!") UO.DeleteJournal() End If UO.FontColor('0x0385') UO.Msg("Мусор !!!") Wait(200) End If Until UO.FindCount()==0 End If end sub
Sub Server(Mode,Select) var i, pos=0, cut=0, cut_tmp=0, msg_tmp, EOF, TXT, Message=false, Exit=false var anekdot_end="Хе-хе-хе-хе :)", stix_end="К О Н Е Ц :)",anekdot_time=7000 ,stix_time=4500 ;================================================================== ; А Н Е К Д О Т Ы! ;------------------------------------------------------------------ Dim anekdot[21] anekdot[0] = 20 anekdot[1] = "- Капитан, у нас пробоина ниже ватерлинии!%- Заделать можно?%- Нет!%- Готовьте спасательные шлюпки!%- Капитан, шлюпок нет!%- Готовьте спасательные жилеты!%- Капитан, но он только один!%- Да? - удивляется капитан и после небольших раздумий хватает жилет и прыгает за борт.%- Капитан, капитан, это была шутка, сегодня же первое апреля!%- Блин, что же мы на земле скажем.%- (Вот черт! Какая пробоина, какая ватерлиния?)%- стремительно приближаясь к земле, думал капитан самолета." anekdot[2] = "Лысый мужчина прихожит в парикмахерскую.%- Чем я могу вам помочь?%- спрашивает его парикмахер.%-Плачу 100$, если вы сделаете так, что моя прическа будет выглядеть как ваша,%и не причините мне при этом никаких неудобств.%- Нет проблем%- отвечает парикмахер и быстро брет себе голову налысо." anekdot[3] = "Муж с женой, детьми и ТЕШЕЙ в буфете перед большим концертом.%Муж:%- Ну что? Нам со Светкой по бокалу сухонького и по мандаринке.%Детишкам по лимонаду и шоколадке.?%- А маме?%- А маме стакан молочка и огурчик!" anekdot[4] = "Шла-шла Красная Шапочка по лесу.%Вдруг видит - сидит Серый Волк под деревом.%- Какие у тебя большие глаза, Серый Волк! - сказала Красная Шапочка.%Серый Волк сорвался с места и убежал.%Идёт Красная Шапочка дальше. Перешла ручеек лесной. Вдруг видит%Серый Волк за пеньком притаился.%- Какие у тебя большие уши, Серый Волк! - сказала Красная Шапочка.%А Серый Волк только - зырк! - на Красную Шапочку. И сбежал.%Идёт она дальше. Пробирается через чащобу. Вдруг - глядь!%чащобе под сосенкой Серый Волк сидит.%- Какие у тебя зубищи, Серый Волк! - воскликнула Красная Шапочка.%- Твою мать, ты мне посрать дашь или нет? - спросил Серый Волк" anekdot[5] = "Осень, холодно, сыро.%аходит в рюмочную оборванный, окоченевший алкаш и просит налить похмелиться.%Буфетчица жалеет его:%- Вы бы себе хоть ботинки новые купили.%- На хр*на, здоровье дороже!" anekdot[6] = "Просит негр джинна:%- Сделай меня белым, чтобы вокруг было много воды и женщин.%И сделал его джинн унитазом в женском туалете.%Промучился бедолага месяц и опять джинна зовет:%- Все! Опять хочу быть черным!%- Хорошо, - сказал джинн, и отключил воду." anekdot[7] = "Приходит девушка в автомагазин и спрашивает продавца:%- У вас датчики есть?%- Какие датчики?%- Ну, такие, чтобы когда я в зад давала лампочки загорались..." anekdot[8] = "Бежит маленькая девочка по полянке, цветочки собирает, песенки поёт:%- Ля-ля-ля-ля... Ой! Тюльпанчик!%Сорвала, бежит дальше.%- Ля-ля-ля-ля... Ой! Незабудочка.%Опять сорвала, бежит дальше.%- Ля-ля-ля-ля... Ой! Камешек! А что под ним?%Поднимает и с жуткой силой бьёт им обратно об землю.%- Фуууууу, бл*дь, ЛЯГУШКА!" anekdot[9] = "Идет урок украинского языка. Учительница спрашивает детей:%- Дети, как будет на украинском языке слово Замаргать?%Дети хранят молчание. Учитильница спрашевает Вовочку, Вовочка не знает.%Учительница:%- Залупати, Вовочка!%Вовочка:%- Сама ты за*упа!" anekdot[10] = "Решили поставить черный ящик в Мерседесе...%чтобы узнать, что в различных странах говорят водители непосредственно после аварии.%Англия:%- Oh, my God!!!!!!!!!!%Америка:%- Oh, shit!!!%Россия:%- ВАУ, ПАЦАНЫ!!!! ГЛЯДИТЕ, КАК Я УМЕЮ!!!!!!!!!!!!!!!!!!!!!" anekdot[11] = "Идет по лесу пьяный бобер. подходит к норе и орет:%- Хуйня!!!%в ответ тишина. он снова:%- Хуйня!!!%в ответ тишина опять. в третий раз он орет:%- Хуйня!!!%из норы высовывает морду выхухоль и говорит:%- Сколько раз тебе говорить, что меня зовут выхухоль!%бобер ей в ответ:%- Стану я всякую хуйню на ВЫ называть!!!" anekdot[12] = "Заходит древняя старуха в сексшоп. Еле идет, вся трясется.%- У-у в-вас в-виб-б-брат-тор-ры е-есть?%- Есть.%- А д-длин-ной 40см. е-есть?%- Да есть.%- А т-тол-лщин-ной 10см. е-есть?%- Ну есть.%- Тог-гда-ск-каж-жите как е-его в-вык-ключ-чить?" anekdot[13] = "В казарме:%- Дедушка, меня опять били во сне!%- Это потому, что ты по ночам втихаря жрёшь Растишку..." anekdot[14] = "Пригребает Вовачка домой и говорит отцу:%- Пап прикинь нам на урок труда училка клей несла разлила и приклеялась.%Отец спрашивает:%- Ну как вы её отодрали.%- Да ученики старших класов аш по два раза!" anekdot[15] = "Жил-был человек, и у него правый глаз был стеклянный.%Приходит он как-то к окулисту, тот его сажает перед табличкой и говорит:%- Закройте правый глаз!%Человек ему отвечает:%- А у меня правый - стеклянный.%- Ну, тогда закройте левый..." anekdot[16] = "Решили провести опрос среди студентов.%У американского спрашивают:%- За сколько вы выучите китайский язык и сдадите по нему экзамен?%- Где-то за два года.%Тот же вопрос англчанину:%- Где-то за год.%Спросили у нашего студента. Отвечает:%- Методичка есть? Вот сейчас докурю, и пойдём сдавать." anekdot[17] = "Идут двое белых полицейских по кварталу, в котором живет белое население.%идят - лежит негр, весь изрешеченный пулями.%Один коп другому:%- Какое жестокое самоубийство!" anekdot[18] = "Совет астролога:%Уран в восьмом доме - вызывайте МЧС!" anekdot[19] = "Звонок в справочную сотового оператора:%- Але, девушка, ваша компания ворует деньги.%- Расскажите подробнее, что случилось.%- Вчера вечером проверил баланс, было 10 баксов, выключил телефон,%сегодня утром включаю - на счете 0.%- А вы телефон на ночь ставили на подзарядку?%- Ставил.%- Так это у вас долги за электричество сняли." anekdot[20] = "Средние века.%Куча народу упала в яму. Сидят, вылезти не могут. Один дед говорит:%- В здешних местах шалит великан-людоед, ловит народ, кого-то трахает и отпускает, а кого-то ест.%Народ всполошился, половина кричат:%- Лучше пускай оттрахает, но живыми останемся! Другая половина:%- Лучше пускай съест, но не потеряем честь и достоинство!%Прибегает великан, носится вокруг ямы и кричит:%- О как много ебды!%Народ обалдел, спрашивают у него:%- А ебда - это что?%Великан почесал голову и отвечает:%- Ну ебда, это которую сначала ебдут, а потом ебдят!!!"
;================================================================== ; С Т И Ш К И! ;------------------------------------------------------------------ Dim stix[12] stix[0] = 11 stix[1] = "Раз Петрович невзначай%Сунул х*й в английский чай,%Сразу вдруг все стало новым:%Х*й - английским, чай - х*евым" stix[2] = "Маленький мальчик по стройке гулял,%сверху нечайно топорик упал.%Долго смеялись над шуткою дети,%слева пол-Петии и справа пол-Пети." stix[3] = "Маленький мальчик на лифте катался,%у лифта нечаянно трос оборвался.%Роется папа в куче костей,%где же ботинки за 30 рублей?" stix[4] = "Валя,Валя не пизди%на себя ты посмотри%Заросла как обезьяна%ты-б побрила руки в ванной%Есть хорошие средства%Воск, липучка и бритва%Ты побрей их наконец%что-б у всех стоял конец%Ножки тоже ты побрей%что-б платок скользил по ним" stix[5] = "Маленький мальчик по Тундре гулял,%Нефть или газ откопать он мечтал,%Люди смеялись, кричали (Дебил!)%А мальчик подрос и клуб (Челси) купил." stix[6] = "Застегни ширинку, охламон,%За тобой следит шпион." stix[7] = "Если худо организму, применяй товарищ клизму.%Убедись товарищ лично - клизма действует отлично !!!" stix[8] = "Одни приходят насрать, навонять.%Другие приходят сидеть, размышлять.%А я прихожу сюда яйца чесать,%И всякую гадость на стенах читать." stix[9] = "Я смотрю в унитаз хохоча:%У меня голубая моча.%И конец у меня голубой,%И вообще я доволен собой!" stix[10] = "Я достаю из широких штанин%Толстый, как консервная банка%Смотрите, завидуйте я - гражданин,%А не какая-нибудь гражданка!" stix[11] = "- Я водка - со мной на праздник четко!!!%- Я салат - вашим лицам рад!!!%- Я самогон - иду на обгон!!!%- Я горилка - мозгов дурилка!!!%- А я гашиш -... я слова забыл...."
;================================================================== ; Р А С П И С А Н И Е! ;------------------------------------------------------------------ Dim turnir[2] turnir[0] = 1 turnir[1] = "09 сентября, 2005 (пятница, 22:00)%Турнир 1х1 по схеме The Next."
UO.FontColor('0x0094') If Mode=='anekdot' Then TXT=anekdot[Select] Else If Mode=='stix' Then TXT=stix[Select] Else If Mode=='turnir_now' Then TXT=turnir[1] Else If Mode=='time_now' Then UO.FontColor('0x0025') UO.Msg("Кстати, текущее время по Москве: "+PrintTime()) return Else If Mode=='info_anekdot' Then return anekdot[0] Else If Mode=='info_stix' Then return stix[0] End If End If End If End If End If End If EOF=StrLen(TXT) REPEAT Message=false pos=cut cut_tmp=0 REPEAT msg_tmp = Mid(TXT, cut, 1) If msg_tmp<>'%' and cut<>EOF Then cut=cut+1 cut_tmp=cut_tmp+1 Else Message=true If cut==EOF Then Exit=true End If cut=cut+1 End If Until Message==true or UO.Dead() UO.Msg(Mid(TXT, pos, cut_tmp)) If Mode=='anekdot' Then Wait(anekdot_time) Else If Mode=='stix' Then Wait(stix_time) Else If Mode=='turnir_now' Then Wait(4500) End If End If End If Until Exit==true or UO.Dead() If Mode=='anekdot' Then UO.Msg(anekdot_end) Else If Mode=='stix' Then UO.Msg(stix_end) Else If Mode=='turnir_now' Then UO.Msg("Всё...") End If End If End If end sub
;================================================================== ; Д О С К А О Б Ъ Я В Л Е Н И Й! ;------------------------------------------------------------------ Sub Declaration(ID_Master) var MSG_NAME, MSG_TMP=0, Time_Off=0, Time_Declaration=0 UO.FontColor('0x0385') UO.Msg("Введите текст объявления:") Wait(1000) UO.FontColor('0x0025') UO.Msg("Жду 30 секунд...") UO.DeleteJournal() REPEAT If UO.JournalSerial(UO.Journal('0'))==UO.GetSerial(ID_Master) Then ;MSG_TMP = Right(UO.Journal('0'),STRLen(UO.Journal('0'))-STRLen(UO.GetName(ID_Master))) MSG_TMP = UO.Journal('0') MSG_NAME = UO.GetName(ID_Master) End If Time_Off = Time_Off+1 Wait(250) Until Time_Off >= 120 or MSG_TMP<>0 UO.DeleteJournal() If Time_Off < 120 Then UO.FontColor('0x0385') UO.Msg("Текст принят! Объявление будет работать 8 мин...") Wait(1500) UO.Msg("чтобы снять его наберите off") Wait(5000) Time_Off = 0 REPEAT If Time_Declaration >= 32 Then UO.FontColor('0x0064') UO.Msg("ОБЪЯВЛЕНИЕ от "+MSG_NAME+"(а)") Wait(1000) UO.FontColor('0x009a') UO.Msg(MSG_TMP) Time_Declaration = 0 Else UO.DeleteJournal() End If Time_Declaration = Time_Declaration+1 Time_Off = Time_Off+1 Wait(250) Until Time_Off >= 1920 or UO.JournalSerial(UO.InJournal("off|OFF|Off")-1)==ID_Master UO.FontColor('0x0025') UO.Msg("Время вышло!") Else UO.FontColor('0x0025') UO.Msg("Время вышло!") End If end sub
Sub PrintTime() var HR = '' var MIN = '' var SEC = '' var NewTime, CurrentTime = UO.Time() If CurrentTime > 99999 Then HR = Mid(STR(CurrentTime),0,2) MIN = Mid(STR(CurrentTime),2,2) SEC = Mid(STR(CurrentTime),4,2) Else If CurrentTime > 9999 Then HR = '0'+Mid(STR(CurrentTime),0,1) MIN = Mid(STR(CurrentTime),1,2) SEC = Mid(STR(CurrentTime),3,2) Else If CurrentTime > 999 Then HR = '00' MIN = Mid(STR(CurrentTime),0,2) SEC = Mid(STR(CurrentTime),2,2) Else If CurrentTime > 99 Then HR = '00' MIN = '0'+Mid(STR(CurrentTime),0,1) SEC = Mid(STR(CurrentTime),1,2) Else If CurrentTime > 9 Then HR = '00' MIN = '00' SEC = STR(CurrentTime) Else HR = '00' MIN = '00' SEC = '0'+STR(CurrentTime) End If End If End If End If End If return (HR+':'+MIN+':'+SEC) end sub
|