Вопросы по AHK-скриптингу

KhanWarden

Участник
42
3
Помогите оптимизировать скрипт:
АХК для МЗ:
#SingleInstance Force
#Persistent
#NoEnv
#Include SAMP_UDF.ahk
#IfWinActive GTA:SA:MP



$~Enter::
if isInChat() && !isDialogOpen() {
    Sleep 200
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    if(chatInput == "/mhelp") {
        addChatMessage("{FF0000}Левый Alt + 0 - {CC3300}Перезагрузка скрипта")
sleep 300
addChatMessage("{FF0000}ПКМ+Alt - {FFFFFF}Лечение")
sleep 300
addChatMessage("{FF0000}/pmp - {FFFFFF}Первая Медицинская Помощь | {FF0000}ПКМ+Х - {FFFFFF}Диагноз/Медкарта")
return
    } else if(chatInput == "/pmp") {
        sleep 200
        addChatMessage("{FF0000}/perelom - {FFFFFF}ПМП при переломе | {FF0000}/ushib - {FFFFFF}ПМП при ушибе")
sleep 300
addChatMessage("{FF0000}/ozhog - {FFFFFF}ПМП при ожоге")
return
    }
    return
    id := getIdByPed(getTargetPed())
    name := RegExReplace(getPlayerNameById(PId),"_"," ")
    if(id == -1)
        addChatMessage("{0070BA}[AHK]: {FF3333}Ошибка! Вы не захватили игрока.")
        return
        SendChat("Вашу ID-карту и мед. карту пожалуйста.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me положив перед собой ID-карту гражданина, схватил со стола ручку, после чего положил перед собой мед. карту и..")
sleep 2000
SendChat("/do ..смотря в ID-карту начал заполнять строки с именем и фамилией, датой рождения, возрастом и местом жительства.")
sleep 2000
SendChat("/todo Жалобы есть на здоровье?*приподняв голову и посмотрев на гражданина.")
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/todo Угу*вписывая слова гражданина в пустые строки")
sleep 2000
SendChat("/me поставив свою подпись в соответствующей строке, протянул руку к печати, после взял ее и..")
sleep 2000
SendChat("/do ..приподняв с подставке приставил к мед карте и надавил.")
sleep 2000
SendChat("/do На мед. карте осталась яркая печать с надписью: «Los Santos Hospital»")
sleep 2000
SendChat("/todo Можете забирать*отодвинув мед. карту и ID-карту гражданина на противоположную часть стола.")
sleep 2000
SendChat("/medcard " id)
return
    }

return

:?:/pmp::
addChatMessage("{CC3300}ПЕРВАЯ МЕДИЦИНСКАЯ ПОМОЩЬ")
sleep 300
addChatMessage("{FF0000}/perelom - {FFFFFF}ПМП при переломе | {FF0000}/ushib - {FFFFFF}ПМП при ушибе")
sleep 300
addChatMessage("{FF0000}/ozhog - {FFFFFF}ПМП при ожоге")
return

~RButton & h::
id := getIdByPed(getTargetPed())
if (id == -1)
addChatMessageEx("AAAAAA", "Игрок не выбран.")
else {
addChatMessage("•{32CD32} [Успешно]{FFFFFF} Вы начали взаимодействовать с " RegExReplace(getPlayerNameById(id), "_", " "))

ShowDialog(2, "{CC66CC}Лечение", "{CC9933}1. {FFFFFF}Голова`n{CC9933}2. {FFFFFF}Живот`n{CC9933}3. {FFFFFF}Горло`n{CC9933}4. {FFFFFF}Тошнота/Диарея`n{CC9933}5. {FFFFFF}Насморк`n{CC9933}6. {FFFFFF}Обезболивающее`n{CC9933}7. {FFFFFF}Давление`n{CC9933}8. {FFFFFF}Другое", "Ок")
Result := LineResult()
if !Result
  return
goto Labe%Result%
return

Labe1:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Tylenol», после чего достала его")
sleep 2000
SendChat("/todo Цена на данное лекарство - 200$ по ценовой политике МЗ*передав блистер пациенту.")
sleep 2000
SendChat("/heal " id " 200")
sleep 2000
return

Labe2:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Tums», после чего достала его.")
sleep 2000
SendChat("/todo Цена на данное лекарство - 100$ по ценовой политике МЗ*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
sleep 2000
return

Labe3:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("Откройте пожалуйста рот, мне нужно взглянуть на состояние горла.")
sleep 2000
SendChat("/do Пациент открыл(а) рот.")
sleep 3000
SendChat("Понятно, можете закрывать.")
sleep 2000
SendChat("/me посмотрев на содержимое основного отдела мед. ящика, вытащила из него блистер с таблетками")
sleep 2000
SendChat("/do На обратной стороне блистера написано название препарата: «Cepacol».")
sleep 2000
SendChat("/me передав блистер пациенту, сказала:")
sleep 2000
SendChat("Стоимость препарата - 100$, принимайте несколько раз в день в течении недели.")
sleep 2000
SendChat("/heal " id " 100")
sleep 2000
return

Labe4:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Imodium», после чего достала его.")
sleep 2000
SendChat("/todo Цена на данное лекарство - 100$ по ценовой политике МЗ*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
return

Labe5:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, достала из него маленький бутылек")
sleep 2000
SendChat("/do На наклейке бутылька написано название препарата: «Аfrin».")
sleep 2000
SendChat("/todo Вот, держите. Нужно закапывать в нос 3-4 раза в день*передав бутылек каплями пациенту")
sleep 2000
SendChat("Стоимость капель - 75$, насморк должен пройти в течении нескольких дней.")
sleep 2000
SendChat("/heal " id " 75")
sleep 2000
return

Labe6:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Ацетаминофен», после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте при болях*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 300")
return

Labe7:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Лизиноприл», после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте 2 раза в день*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
return

Labe8:
SendChat("Мне ваш симптом знаком...")
sleep 2000
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела нужный блистер, после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте 2 раза в день*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 300")
return
}
return

LAlt & Q::
ShowDialog(2, "{CC66CC}Приветствие", "{FFA500}Приветствие`n{FFA500}Позвать за собой", "Ок")
Result := LineResult()
if !Result
  return
goto, Labee%Result%
return

Labee1:
SendChat("Здравствуйте, я ваш лечащий врач. Что вас беспокоит?")
return

Labee2:
SendChat("Пройдёмте за мной. Я вам помогу.")
return

:?:/perelom::
SendChat("Не совершайте резких движений и всё будет хорошо.")
sleep 2000
SendChat("/do На правом плече висит медицинская сумка.")
sleep 2000
SendChat("/me открыв мед. сумку, достала из неё мед. перчатки")
sleep 2000
SendChat("/me надев перчатки на руки, достала из сумки ампулу с обезболивающим «Фентанил»")
sleep 2000
SendChat("/me надломала ампулу с обезболивающим, тем самым вскрыв её")
sleep 2000
SendChat("/me достав из мед. сумки шприц, достала его из упаковки")
sleep 2000
SendChat("/me засунув шприц в ампулу, набрала в него препарат")
sleep 2000
SendChat("/me воткнув шприц пациенту в близь перелома, ввела лекарство")
sleep 2000
SendChat("/me высунув шприц, положила его в мед. сумку")
sleep 2000
SendChat("/me достав из мед. сумки спрей «Перекись Водорода», обработала им зону кровотечения")
sleep 2000
SendChat("/me убрав спрей «Перекись Водорода» в мед. сумку, достала из неё спрей «Фрост»")
sleep 2000
SendChat("/me обработав зону открытого перелома спреем, убрала его в мед. сумку")
sleep 2000
SendChat("/do Интенсивность выделения крови временно снижена.")
sleep 2000
SendChat("/me достала необходимые крепления для удержания конечности из мед.сумки")
sleep 2000
SendChat("/me производит шинирование места открытого перелома")
sleep 2000
SendChat("/do Шинирование завершено.")
sleep 2000
SendChat("/do Шина плотно сидит на конечности пациента.")
sleep 2000
SendChat("Вот и всё. Не нагружайте ногу, ездите на машине.")
return

:?:/ushib::
SendChat("Не беспокойтесь я вам помогу.")
sleep 2000
SendChat("/do На правом плече висит медицинская сумка.")
sleep 2000
SendChat("/me открыв мед. сумку, достала из неё эластичный бинт")
sleep 2000
SendChat("/me достав из сумки спрей «Фрост», обработала ушиб спреем")
sleep 2000
SendChat("/me убрав спрей в сумку, наложила на конечность пострадавшего эластичных бинт")
sleep 2000
SendChat("/me крепко затянула эластичный бинт")
sleep 2000
SendChat("/do Эластичный бинт плотно сидит на конечности пациента.")
sleep 2000
SendChat("Сейчас доставим вас в больницу и окажем вам дальнейшую мед. помощь. Не переживайте.")
sleep 2000
SendChat("Я помогу вам дойти до кареты скорой помощи.")
sleep 2000
SendChat("/me взяв пострадавшего под руку, помогла ему встать")
sleep 2000
return

:?:/ozhog::
SendChat("/do На правом плече висит открытая мед. сумка.")
sleep 2000
SendChat("/me сняв сумку с плеча, кинула её на пол")
sleep 2000
SendChat("/me достала из сумки мед.ножницы")
sleep 2000
SendChat("/me используя ножницы, освободила обожжённый участок кожи от одежды")
sleep 2000
SendChat("/me достав из сумки спрей «Олазоль», открыла его колпачок")
sleep 2000
SendChat("/me сбрызнула спреем обгоревшие участки кожи, закрыла спрей")
sleep 2000
SendChat("/me убрав его в сумку, достала из неё бинты")
sleep 2000
SendChat("/me наложила повязку из бинтов на ожог")
sleep 2000
SendChat("/do Повязка крепко сидит на ожоге.")
sleep 2000
SendChat("Вот так. А теперь мы доставим вас в больницу для оказания полноценной мед.помощи")
sleep 2000
return

~RButton & x::
id := getIdByPed(getTargetPed())
if (id == -1)
addChatMessageEx("AAAAAA", "Игрок не выбран.")
else {
addChatMessage("•{32CD32} [Успешно]{FFFFFF} Вы начали взаимодействовать с " RegExReplace(getPlayerNameById(id), "_", " "))
ShowDialog(2, "{CC66CC}Диагноз", "{FFA500}1. {FFFFFF}Приём`n{FFA500}2. {FFFFFF}Процедуры`n{FFA500}3. {FFFFFF}Провести мед.осмотр", "Ок")
Result := LineResult()
if !Result
  return
goto Laben%Result%
return

Laben1:
SendChat("Здравствуйте, я ваш лечащий врач " getUserName() ". Покажите ваш паспорт и мед.карту.")
sleep 2000
SendChat("/n /pass " getId()"; /med " getId())
sleep 1500
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/do На плече весит медицинская сумка.")
sleep 2000
SendChat("/me открыла медицинскую сумку, после чего достала из неё блокнот и ручку")
sleep 2000
SendChat("/me открылa чистый лист блокнота, после чего записалa данные пациента")
sleep 2000
SendChat("Расскажите о ваших симптомах.")
sleep 2000
SendChat("/do Блокнот и ручка в руках.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me слушая пациента делает пометки в блокнот")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me сделав выводы о диагнозе написалa его в блокнот, после чего поставилa роспись")
sleep 2000
SendChat("/me оторвав лист из блокнота передалa его пациенту")
sleep 2000
SendChat("/diagnos " id)
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("Оплатить лечение можно в регистратуре на первом этаже больницы")
return

Laben2:
ShowDialog(2, "{CC66CC}Болезни", "{FFA500}1. {FFFFFF}Бронхиальная астма`n{FFA500}2. {FFFFFF}Геморрой`n{FFA500}3. {FFFFFF}Гастрит`n{FFA500}4. {FFFFFF}Туберкулёз VC-01`n{FFA500}5. {FFFFFF}Невроз`n{FFA500}6. {FFFFFF}Мирингит`n{FFA500}7. {FFFFFF}Дерматит VC-02`n{FFA500}8. {FFFFFF}Бронхит VC-03", "Ок")
Result := LineResult()
if !Result
  return
goto Laben2_%Result%
return

Laben2_1:
SendChat("/todo Ну что начнем* кинув взгляд на пациента сидящего на кровати")
sleep 2000
SendChat("Ложитесь на кушетку.")
sleep 2000
SendChat("/do В левой руке находится кейс с необходимыми пренадлежжностями.")
sleep 2000
SendChat("/me протянула левую руку к столу после чего опустила кейс с пренадлежностями затем...")
sleep 2000
SendChat("/do ...легким движением руки отсчелкнула крепления кейса. ")
sleep 2000
SendChat("/me протянула правую руку в кейс после чего достала пару стерильных перчаток из кейса... ")
sleep 2000
SendChat("/do... после чего надела их на обе руки.")
sleep 2000
SendChat("/me протянула обе руки в кейс после чего достала аппарат для ингаляции...")
sleep 2000
SendChat(" /do ..., аптечную упаковку с лекарственным веществом, шприцы и стерильные иглы.")
sleep 2000
SendChat("/me вскрыв упаковку, стала разводить лекарственное вещество, а после заправлять им шприц")
sleep 2000
SendChat("/me в камеру небулайзера залила физиологический раствор, а затем добавила необходимую дозу препарата")
sleep 2000
SendChat("/todo Дышите глубоко через рот.*подставив горлышко ингалятора к носу")
sleep 5000
SendChat("/do Через опредёленное время жидкость в небулайзере закончилась.")
sleep 2000
SendChat("/me акуратными движениями рук убрала горлышко ингалятора в кейс затем... ")
sleep 2000
SendChat("/do ...стала полоскать рот пациенту.")
sleep 2000
SendChat("/todo Держите, проделывайте ингаляцию ежедневно.*передав карманный ингалятор человеку напротив")
sleep 2000
SendChat("/procedure " id)
return

Laben2_2:
SendChat("/todo Опускайте нижнюю часть одежды вместе с бельем*вытащив из кармана пару перчаток.")
sleep 2000
SendChat("/me расправив перчатки, натянула их на руки, после чего направилась к холодильной камере.")
sleep 2000
SendChat("/me подойдя к холодильной камере, взялась за ручку дверцы и потянула ее на себя.")
sleep 2000
SendChat("/do Дверца камеры открылась, внутри лежат и стоят различные препараты, среди которых на полке несколько ректальных свечей.")
sleep 2000
SendChat("/me , взяв одну из свечей, сорвалa с нее обертку, после чего закрылa дверцу камеры и положилa обертку на стол.")
sleep 2000
SendChat("/todo Ложитесь на правый бок и расслабьтесь, не сказал бы, что это приятно*подойдя к пациенту со спины.")
sleep 2000
SendChat("/n Enter - чтобы лечь на кушетку")
sleep 2000
SendChat("/me немного наклонившись, левой рукой чуть-чуть отодвинула левую ягодицу и аккуратно поместила свечу в анус.")
sleep 2000
SendChat("/me наполовину введя свечу, задержала ее в таком положении на 20 секунд.")
sleep 2000
SendChat("/me аккуратно протолкнула свечу до конца в прямую кишку, после чего встала в полный рост, сняла перчатки и сказала: ")
sleep 2000
SendChat("Можете одеваться.")
sleep 2000
SendChat("/todo Желательно полежать пару минут*выкинув перчатки в урну.")
sleep 2000
return

Laben2_3:
SendChat("Ложитесь на правый бок на кушетку.")
sleep 2000
SendChat("/do Рядом с кушеткой стойка с различными мед. приборами и инструментами. Около кушетки различные..")
sleep 2000
SendChat("/do ..аппараты для проведения процедур, обследований и операций, среди которых гастроскоп.")
sleep 2000
SendChat("/me схватив с подставки перчатки, наделa их на руки, после чего взялa трубку гастроскопа и сказал:")
sleep 2000
SendChat("Откройте рот, будет немного неприятно, пытайтесь потерпеть.")
sleep 2000
SendChat("При рвотных позывах поднимите руку.")
sleep 2000
SendChat("/me нажав на кнопку включения гастроскопа, посмотрелa на экран.")
sleep 2000
SendChat("/me поместив конец трубки с камерой в ротовую полость пациента, началa аккуратно проталкивать ее в пищевод, попутно..")
sleep 2000
SendChat("/do ..наблюдая за картинкой на экране.")
sleep 2000
SendChat("/me поочередно осмотрев пищевод и желудок при помощи гастроскопа и экрана с изображением,..")
sleep 2000
SendChat("/do ..аккуратно изъялa гастроскоп из пищевода, а после из ротовой полости пациента.")
sleep 2000
SendChat("/todo Обследование закончено*положив гастроскоп на пустую подставку.")
sleep 2000
SendChat("Желательно пить три раза в день капсулы Омеза во время еды, так же..")
sleep 2000
SendChat("..временно отказаться от жирной, острой и прочей тяжелой пищи.")
sleep 2000
SendChat("Пейте больше воды, желательно не меньше 2-х литров в день, а пока..")
sleep 2000
SendChat("/me достала из медицинской сумки блистер с названием «Омез»")
sleep 2000
SendChat("/todo ..а пока принимайте это*протянув блистер пациенту. ")
sleep 2000
SendChat("/procedure " id)
return

Laben2_4:
SendChat("/do Перчатки находятся на столе слева от пациента.")
sleep 2000
SendChat("/me несколькими движениями рук взялa стерильную пару латексных перчаток со стола... ")
sleep 2000
SendChat("/do ...затем наделa их на обе руки.")
sleep 2000
SendChat("/do На столе находится вата и медицинский спирт.")
sleep 2000
SendChat("/me оторвав приличное количество ваты, сталa переворачивать баночку с спиртом...")
sleep 2000
SendChat("/do ...в горлышке придерживая её слоем ватки тем самым обмочив ватку.")
sleep 2000
SendChat("/me коловыми движенями руки протёрла место для укола")
sleep 2000
SendChat("/do На столе находится колба с жидкостью и упаковка шприцов.")
sleep 2000
SendChat("/me раскрыв упаковку, достала шприц затем вставила иглу в колбу после чего...")
sleep 2000
SendChat("/do ...начала на себя тянуть поршень шприца тем самым набрала раствор в шприц.")
sleep 2000
SendChat("/do Раствор введён в шприц.")
sleep 2000
SendChat("/me подвeлa иглу к обеззараженному месту, после чего вонзилa иглу в кожу и ввёл жидкость внутрь")
sleep 2000
SendChat("/procedure " id)
return

Laben2_5:
SendChat("/procedure " id)
return

Laben2_6:
SendChat("/todo Присаживайтесь на кровать*поставив медицинский ящик на тумбу.")
sleep 2000
SendChat("/me схватившись за защелки, потянулa их на себя, после чего открылa крышку ящика и, осмотрев содержимое, вытащилa..")
sleep 2000
SendChat("/do ..из отсека бутылочку с надписью «Отинум на основе 20%-ного холина салицилата», затем сорвалa с нее крышку и..")
sleep 2000
SendChat("/do ..приблизившись к пациенту, наклонилась к уху и начала осмотр беспокоящей пациента области.")
sleep 2000
SendChat("/me осмотрев ухо, немного наклонила голову пациента, после чего поместила пипетку на бутылке в ушную раковину и..")
sleep 2000
SendChat("/do ..направив пипетку на место воспаления, аккуратно надавила на бутылочку.")
sleep 2000
SendChat("/do Препарат выступил из отверстия на пипетки и попал на место воспаления.")
sleep 2000
SendChat("/todo Так, будете проходить эту процедуру до полного исчезновения воспаления*изъяв пипетку из уха и накрутив крышку.")
sleep 2000
SendChat("/todo Полежите пока, пусть капли останутся в ушной раковине*поставив бутылек в контейнер.")
sleep 2000
SendChat("/me закрыла крышку контейнера, защелкнула защелки, после чего взяла его в правую руку. ")
sleep 2000
SendChat("/procedure " id)
return

Laben2_7:
SendChat("/do Пациент находится в горизонтальном положении.")
sleep 2000
SendChat("/do Кейс находится в руке врача.")
sleep 2000
SendChat("/me движениями рук открылa кейс, затем досталa из него стерильные перчатки, после чего...")
sleep 2000
SendChat("/do ...наделa их на обе руки")
sleep 2000
SendChat("/do Руки одеты в стерильные перчатки.")
sleep 2000
SendChat("/todo Посмотрим, что у вас.*начав осматривать тело пациента")
sleep 2000
SendChat("/me резким движением обоих рук задралa кофту лежащего человека")
sleep 2000
SendChat("/me осмотрев часть тела пациента заметилa воспаление красного цвета в области живота")
sleep 2000
SendChat("/me движениями рук досталa из кейса нужную мазь и, открыв крышку, выдавилa смесь на ладонь")
sleep 2000
SendChat("/do Смесь находится на ладони врача.")
sleep 2000
SendChat("/me коловым движением руки сталa натирать мазь по всей области живота")
sleep 2000
SendChat("/todo Повернитесь на бок.*задирая кофту выше")
sleep 2000
SendChat("/me осмотрев область спины пациента заметилa повреждение в области спины после чего... ")
sleep 2000
SendChat("/do ...выдавилa остатки мази и сталa размазывать по спине.")
sleep 2000
SendChat("/todo Лежите до полного впитывания.*снимая перчатки и выкидывая их в урну")
sleep 2000
SendChat("/procedure " id)
return

Laben2_8:
SendChat("/do Кейс c необходимими вещами находится в правой руке в руке.")
sleep 2000
SendChat("/me вертикальными движениями обоих рук открыла нижние защелки кейса после чего...")
sleep 2000
SendChat("/do ...достала пачку с горчичниками.")
sleep 2000
SendChat("/do Пачка c горчичниками находится в руке врача.")
sleep 2000
SendChat("/me протянула правую руку в кейс после чего достала из кейса стерильные перчатки затем... ")
sleep 2000
SendChat("/do ...надела их на обе руки.")
sleep 2000
SendChat("/do Руки были одеты в стерильные перчатки.")
sleep 2000
SendChat("/do На столе стоит подготовленная заранее чаша с чистой тёплой водой.")
sleep 2000
SendChat("/me движениями обоих рук раскрыла пачку с горчичниками, затем достала одну пару")
sleep 2000
SendChat("/me вертикальными движениями обоих рук поместила горчичники в воду")
sleep 2000
SendChat("/todo Задиру кофту.*вымещая набухший горчичник наружу")
sleep 2000
SendChat("/me задернула кофту пациенту")
sleep 2000
SendChat("/me движениями обоих рук расклала горчичник в области грудной клетки")
sleep 2000
SendChat("/do На столе лежит махровое полотенце.")
sleep 2000
SendChat("/me протянула руку к полотенцу затем взяла лежащее полотенце затем... ")
sleep 2000
SendChat("/do ...сложилa его в два слоя, приложилa его к груди пациента.")
sleep 2000
SendChat("/todo Лежите ровно 5 минут.*снимая перчатки и выкидывая их в урну")
sleep 2000
SendChat("/procedure " id)
return

Laben3:
SendChat("Вашу ID-карту и мед. карту пожалуйста.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me положив перед собой ID-карту гражданина, схватил со стола ручку, после чего положил перед собой мед. карту и..")
sleep 2000
SendChat("/do ..смотря в ID-карту начал заполнять строки с именем и фамилией, датой рождения, возрастом и местом жительства.")
sleep 2000
SendChat("/todo Жалобы есть на здоровье?*приподняв голову и посмотрев на гражданина.")
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/todo Угу*вписывая слова гражданина в пустые строки")
sleep 2000
SendChat("/me поставив свою подпись в соответствующей строке, протянул руку к печати, после взял ее и..")
sleep 2000
SendChat("/do ..приподняв с подставке приставил к мед карте и надавил.")
sleep 2000
SendChat("/do На мед. карте осталась яркая печать с надписью: «Los Santos Hospital»")
sleep 2000
SendChat("/todo Можете забирать*отодвинув мед. карту и ID-карту гражданина на противоположную часть стола.")
sleep 2000
SendChat("/medcard " id)
return
}
return
 

degrando

Известный
362
127
Помогите оптимизировать скрипт:
АХК для МЗ:
#SingleInstance Force
#Persistent
#NoEnv
#Include SAMP_UDF.ahk
#IfWinActive GTA:SA:MP



$~Enter::
if isInChat() && !isDialogOpen() {
    Sleep 200
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    if(chatInput == "/mhelp") {
        addChatMessage("{FF0000}Левый Alt + 0 - {CC3300}Перезагрузка скрипта")
sleep 300
addChatMessage("{FF0000}ПКМ+Alt - {FFFFFF}Лечение")
sleep 300
addChatMessage("{FF0000}/pmp - {FFFFFF}Первая Медицинская Помощь | {FF0000}ПКМ+Х - {FFFFFF}Диагноз/Медкарта")
return
    } else if(chatInput == "/pmp") {
        sleep 200
        addChatMessage("{FF0000}/perelom - {FFFFFF}ПМП при переломе | {FF0000}/ushib - {FFFFFF}ПМП при ушибе")
sleep 300
addChatMessage("{FF0000}/ozhog - {FFFFFF}ПМП при ожоге")
return
    }
    return
    id := getIdByPed(getTargetPed())
    name := RegExReplace(getPlayerNameById(PId),"_"," ")
    if(id == -1)
        addChatMessage("{0070BA}[AHK]: {FF3333}Ошибка! Вы не захватили игрока.")
        return
        SendChat("Вашу ID-карту и мед. карту пожалуйста.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me положив перед собой ID-карту гражданина, схватил со стола ручку, после чего положил перед собой мед. карту и..")
sleep 2000
SendChat("/do ..смотря в ID-карту начал заполнять строки с именем и фамилией, датой рождения, возрастом и местом жительства.")
sleep 2000
SendChat("/todo Жалобы есть на здоровье?*приподняв голову и посмотрев на гражданина.")
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/todo Угу*вписывая слова гражданина в пустые строки")
sleep 2000
SendChat("/me поставив свою подпись в соответствующей строке, протянул руку к печати, после взял ее и..")
sleep 2000
SendChat("/do ..приподняв с подставке приставил к мед карте и надавил.")
sleep 2000
SendChat("/do На мед. карте осталась яркая печать с надписью: «Los Santos Hospital»")
sleep 2000
SendChat("/todo Можете забирать*отодвинув мед. карту и ID-карту гражданина на противоположную часть стола.")
sleep 2000
SendChat("/medcard " id)
return
    }

return

:?:/pmp::
addChatMessage("{CC3300}ПЕРВАЯ МЕДИЦИНСКАЯ ПОМОЩЬ")
sleep 300
addChatMessage("{FF0000}/perelom - {FFFFFF}ПМП при переломе | {FF0000}/ushib - {FFFFFF}ПМП при ушибе")
sleep 300
addChatMessage("{FF0000}/ozhog - {FFFFFF}ПМП при ожоге")
return

~RButton & h::
id := getIdByPed(getTargetPed())
if (id == -1)
addChatMessageEx("AAAAAA", "Игрок не выбран.")
else {
addChatMessage("•{32CD32} [Успешно]{FFFFFF} Вы начали взаимодействовать с " RegExReplace(getPlayerNameById(id), "_", " "))

ShowDialog(2, "{CC66CC}Лечение", "{CC9933}1. {FFFFFF}Голова`n{CC9933}2. {FFFFFF}Живот`n{CC9933}3. {FFFFFF}Горло`n{CC9933}4. {FFFFFF}Тошнота/Диарея`n{CC9933}5. {FFFFFF}Насморк`n{CC9933}6. {FFFFFF}Обезболивающее`n{CC9933}7. {FFFFFF}Давление`n{CC9933}8. {FFFFFF}Другое", "Ок")
Result := LineResult()
if !Result
  return
goto Labe%Result%
return

Labe1:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Tylenol», после чего достала его")
sleep 2000
SendChat("/todo Цена на данное лекарство - 200$ по ценовой политике МЗ*передав блистер пациенту.")
sleep 2000
SendChat("/heal " id " 200")
sleep 2000
return

Labe2:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Tums», после чего достала его.")
sleep 2000
SendChat("/todo Цена на данное лекарство - 100$ по ценовой политике МЗ*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
sleep 2000
return

Labe3:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("Откройте пожалуйста рот, мне нужно взглянуть на состояние горла.")
sleep 2000
SendChat("/do Пациент открыл(а) рот.")
sleep 3000
SendChat("Понятно, можете закрывать.")
sleep 2000
SendChat("/me посмотрев на содержимое основного отдела мед. ящика, вытащила из него блистер с таблетками")
sleep 2000
SendChat("/do На обратной стороне блистера написано название препарата: «Cepacol».")
sleep 2000
SendChat("/me передав блистер пациенту, сказала:")
sleep 2000
SendChat("Стоимость препарата - 100$, принимайте несколько раз в день в течении недели.")
sleep 2000
SendChat("/heal " id " 100")
sleep 2000
return

Labe4:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Imodium», после чего достала его.")
sleep 2000
SendChat("/todo Цена на данное лекарство - 100$ по ценовой политике МЗ*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
return

Labe5:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, достала из него маленький бутылек")
sleep 2000
SendChat("/do На наклейке бутылька написано название препарата: «Аfrin».")
sleep 2000
SendChat("/todo Вот, держите. Нужно закапывать в нос 3-4 раза в день*передав бутылек каплями пациенту")
sleep 2000
SendChat("Стоимость капель - 75$, насморк должен пройти в течении нескольких дней.")
sleep 2000
SendChat("/heal " id " 75")
sleep 2000
return

Labe6:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Ацетаминофен», после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте при болях*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 300")
return

Labe7:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Лизиноприл», после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте 2 раза в день*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
return

Labe8:
SendChat("Мне ваш симптом знаком...")
sleep 2000
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела нужный блистер, после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте 2 раза в день*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 300")
return
}
return

LAlt & Q::
ShowDialog(2, "{CC66CC}Приветствие", "{FFA500}Приветствие`n{FFA500}Позвать за собой", "Ок")
Result := LineResult()
if !Result
  return
goto, Labee%Result%
return

Labee1:
SendChat("Здравствуйте, я ваш лечащий врач. Что вас беспокоит?")
return

Labee2:
SendChat("Пройдёмте за мной. Я вам помогу.")
return

:?:/perelom::
SendChat("Не совершайте резких движений и всё будет хорошо.")
sleep 2000
SendChat("/do На правом плече висит медицинская сумка.")
sleep 2000
SendChat("/me открыв мед. сумку, достала из неё мед. перчатки")
sleep 2000
SendChat("/me надев перчатки на руки, достала из сумки ампулу с обезболивающим «Фентанил»")
sleep 2000
SendChat("/me надломала ампулу с обезболивающим, тем самым вскрыв её")
sleep 2000
SendChat("/me достав из мед. сумки шприц, достала его из упаковки")
sleep 2000
SendChat("/me засунув шприц в ампулу, набрала в него препарат")
sleep 2000
SendChat("/me воткнув шприц пациенту в близь перелома, ввела лекарство")
sleep 2000
SendChat("/me высунув шприц, положила его в мед. сумку")
sleep 2000
SendChat("/me достав из мед. сумки спрей «Перекись Водорода», обработала им зону кровотечения")
sleep 2000
SendChat("/me убрав спрей «Перекись Водорода» в мед. сумку, достала из неё спрей «Фрост»")
sleep 2000
SendChat("/me обработав зону открытого перелома спреем, убрала его в мед. сумку")
sleep 2000
SendChat("/do Интенсивность выделения крови временно снижена.")
sleep 2000
SendChat("/me достала необходимые крепления для удержания конечности из мед.сумки")
sleep 2000
SendChat("/me производит шинирование места открытого перелома")
sleep 2000
SendChat("/do Шинирование завершено.")
sleep 2000
SendChat("/do Шина плотно сидит на конечности пациента.")
sleep 2000
SendChat("Вот и всё. Не нагружайте ногу, ездите на машине.")
return

:?:/ushib::
SendChat("Не беспокойтесь я вам помогу.")
sleep 2000
SendChat("/do На правом плече висит медицинская сумка.")
sleep 2000
SendChat("/me открыв мед. сумку, достала из неё эластичный бинт")
sleep 2000
SendChat("/me достав из сумки спрей «Фрост», обработала ушиб спреем")
sleep 2000
SendChat("/me убрав спрей в сумку, наложила на конечность пострадавшего эластичных бинт")
sleep 2000
SendChat("/me крепко затянула эластичный бинт")
sleep 2000
SendChat("/do Эластичный бинт плотно сидит на конечности пациента.")
sleep 2000
SendChat("Сейчас доставим вас в больницу и окажем вам дальнейшую мед. помощь. Не переживайте.")
sleep 2000
SendChat("Я помогу вам дойти до кареты скорой помощи.")
sleep 2000
SendChat("/me взяв пострадавшего под руку, помогла ему встать")
sleep 2000
return

:?:/ozhog::
SendChat("/do На правом плече висит открытая мед. сумка.")
sleep 2000
SendChat("/me сняв сумку с плеча, кинула её на пол")
sleep 2000
SendChat("/me достала из сумки мед.ножницы")
sleep 2000
SendChat("/me используя ножницы, освободила обожжённый участок кожи от одежды")
sleep 2000
SendChat("/me достав из сумки спрей «Олазоль», открыла его колпачок")
sleep 2000
SendChat("/me сбрызнула спреем обгоревшие участки кожи, закрыла спрей")
sleep 2000
SendChat("/me убрав его в сумку, достала из неё бинты")
sleep 2000
SendChat("/me наложила повязку из бинтов на ожог")
sleep 2000
SendChat("/do Повязка крепко сидит на ожоге.")
sleep 2000
SendChat("Вот так. А теперь мы доставим вас в больницу для оказания полноценной мед.помощи")
sleep 2000
return

~RButton & x::
id := getIdByPed(getTargetPed())
if (id == -1)
addChatMessageEx("AAAAAA", "Игрок не выбран.")
else {
addChatMessage("•{32CD32} [Успешно]{FFFFFF} Вы начали взаимодействовать с " RegExReplace(getPlayerNameById(id), "_", " "))
ShowDialog(2, "{CC66CC}Диагноз", "{FFA500}1. {FFFFFF}Приём`n{FFA500}2. {FFFFFF}Процедуры`n{FFA500}3. {FFFFFF}Провести мед.осмотр", "Ок")
Result := LineResult()
if !Result
  return
goto Laben%Result%
return

Laben1:
SendChat("Здравствуйте, я ваш лечащий врач " getUserName() ". Покажите ваш паспорт и мед.карту.")
sleep 2000
SendChat("/n /pass " getId()"; /med " getId())
sleep 1500
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/do На плече весит медицинская сумка.")
sleep 2000
SendChat("/me открыла медицинскую сумку, после чего достала из неё блокнот и ручку")
sleep 2000
SendChat("/me открылa чистый лист блокнота, после чего записалa данные пациента")
sleep 2000
SendChat("Расскажите о ваших симптомах.")
sleep 2000
SendChat("/do Блокнот и ручка в руках.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me слушая пациента делает пометки в блокнот")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me сделав выводы о диагнозе написалa его в блокнот, после чего поставилa роспись")
sleep 2000
SendChat("/me оторвав лист из блокнота передалa его пациенту")
sleep 2000
SendChat("/diagnos " id)
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("Оплатить лечение можно в регистратуре на первом этаже больницы")
return

Laben2:
ShowDialog(2, "{CC66CC}Болезни", "{FFA500}1. {FFFFFF}Бронхиальная астма`n{FFA500}2. {FFFFFF}Геморрой`n{FFA500}3. {FFFFFF}Гастрит`n{FFA500}4. {FFFFFF}Туберкулёз VC-01`n{FFA500}5. {FFFFFF}Невроз`n{FFA500}6. {FFFFFF}Мирингит`n{FFA500}7. {FFFFFF}Дерматит VC-02`n{FFA500}8. {FFFFFF}Бронхит VC-03", "Ок")
Result := LineResult()
if !Result
  return
goto Laben2_%Result%
return

Laben2_1:
SendChat("/todo Ну что начнем* кинув взгляд на пациента сидящего на кровати")
sleep 2000
SendChat("Ложитесь на кушетку.")
sleep 2000
SendChat("/do В левой руке находится кейс с необходимыми пренадлежжностями.")
sleep 2000
SendChat("/me протянула левую руку к столу после чего опустила кейс с пренадлежностями затем...")
sleep 2000
SendChat("/do ...легким движением руки отсчелкнула крепления кейса. ")
sleep 2000
SendChat("/me протянула правую руку в кейс после чего достала пару стерильных перчаток из кейса... ")
sleep 2000
SendChat("/do... после чего надела их на обе руки.")
sleep 2000
SendChat("/me протянула обе руки в кейс после чего достала аппарат для ингаляции...")
sleep 2000
SendChat(" /do ..., аптечную упаковку с лекарственным веществом, шприцы и стерильные иглы.")
sleep 2000
SendChat("/me вскрыв упаковку, стала разводить лекарственное вещество, а после заправлять им шприц")
sleep 2000
SendChat("/me в камеру небулайзера залила физиологический раствор, а затем добавила необходимую дозу препарата")
sleep 2000
SendChat("/todo Дышите глубоко через рот.*подставив горлышко ингалятора к носу")
sleep 5000
SendChat("/do Через опредёленное время жидкость в небулайзере закончилась.")
sleep 2000
SendChat("/me акуратными движениями рук убрала горлышко ингалятора в кейс затем... ")
sleep 2000
SendChat("/do ...стала полоскать рот пациенту.")
sleep 2000
SendChat("/todo Держите, проделывайте ингаляцию ежедневно.*передав карманный ингалятор человеку напротив")
sleep 2000
SendChat("/procedure " id)
return

Laben2_2:
SendChat("/todo Опускайте нижнюю часть одежды вместе с бельем*вытащив из кармана пару перчаток.")
sleep 2000
SendChat("/me расправив перчатки, натянула их на руки, после чего направилась к холодильной камере.")
sleep 2000
SendChat("/me подойдя к холодильной камере, взялась за ручку дверцы и потянула ее на себя.")
sleep 2000
SendChat("/do Дверца камеры открылась, внутри лежат и стоят различные препараты, среди которых на полке несколько ректальных свечей.")
sleep 2000
SendChat("/me , взяв одну из свечей, сорвалa с нее обертку, после чего закрылa дверцу камеры и положилa обертку на стол.")
sleep 2000
SendChat("/todo Ложитесь на правый бок и расслабьтесь, не сказал бы, что это приятно*подойдя к пациенту со спины.")
sleep 2000
SendChat("/n Enter - чтобы лечь на кушетку")
sleep 2000
SendChat("/me немного наклонившись, левой рукой чуть-чуть отодвинула левую ягодицу и аккуратно поместила свечу в анус.")
sleep 2000
SendChat("/me наполовину введя свечу, задержала ее в таком положении на 20 секунд.")
sleep 2000
SendChat("/me аккуратно протолкнула свечу до конца в прямую кишку, после чего встала в полный рост, сняла перчатки и сказала: ")
sleep 2000
SendChat("Можете одеваться.")
sleep 2000
SendChat("/todo Желательно полежать пару минут*выкинув перчатки в урну.")
sleep 2000
return

Laben2_3:
SendChat("Ложитесь на правый бок на кушетку.")
sleep 2000
SendChat("/do Рядом с кушеткой стойка с различными мед. приборами и инструментами. Около кушетки различные..")
sleep 2000
SendChat("/do ..аппараты для проведения процедур, обследований и операций, среди которых гастроскоп.")
sleep 2000
SendChat("/me схватив с подставки перчатки, наделa их на руки, после чего взялa трубку гастроскопа и сказал:")
sleep 2000
SendChat("Откройте рот, будет немного неприятно, пытайтесь потерпеть.")
sleep 2000
SendChat("При рвотных позывах поднимите руку.")
sleep 2000
SendChat("/me нажав на кнопку включения гастроскопа, посмотрелa на экран.")
sleep 2000
SendChat("/me поместив конец трубки с камерой в ротовую полость пациента, началa аккуратно проталкивать ее в пищевод, попутно..")
sleep 2000
SendChat("/do ..наблюдая за картинкой на экране.")
sleep 2000
SendChat("/me поочередно осмотрев пищевод и желудок при помощи гастроскопа и экрана с изображением,..")
sleep 2000
SendChat("/do ..аккуратно изъялa гастроскоп из пищевода, а после из ротовой полости пациента.")
sleep 2000
SendChat("/todo Обследование закончено*положив гастроскоп на пустую подставку.")
sleep 2000
SendChat("Желательно пить три раза в день капсулы Омеза во время еды, так же..")
sleep 2000
SendChat("..временно отказаться от жирной, острой и прочей тяжелой пищи.")
sleep 2000
SendChat("Пейте больше воды, желательно не меньше 2-х литров в день, а пока..")
sleep 2000
SendChat("/me достала из медицинской сумки блистер с названием «Омез»")
sleep 2000
SendChat("/todo ..а пока принимайте это*протянув блистер пациенту. ")
sleep 2000
SendChat("/procedure " id)
return

Laben2_4:
SendChat("/do Перчатки находятся на столе слева от пациента.")
sleep 2000
SendChat("/me несколькими движениями рук взялa стерильную пару латексных перчаток со стола... ")
sleep 2000
SendChat("/do ...затем наделa их на обе руки.")
sleep 2000
SendChat("/do На столе находится вата и медицинский спирт.")
sleep 2000
SendChat("/me оторвав приличное количество ваты, сталa переворачивать баночку с спиртом...")
sleep 2000
SendChat("/do ...в горлышке придерживая её слоем ватки тем самым обмочив ватку.")
sleep 2000
SendChat("/me коловыми движенями руки протёрла место для укола")
sleep 2000
SendChat("/do На столе находится колба с жидкостью и упаковка шприцов.")
sleep 2000
SendChat("/me раскрыв упаковку, достала шприц затем вставила иглу в колбу после чего...")
sleep 2000
SendChat("/do ...начала на себя тянуть поршень шприца тем самым набрала раствор в шприц.")
sleep 2000
SendChat("/do Раствор введён в шприц.")
sleep 2000
SendChat("/me подвeлa иглу к обеззараженному месту, после чего вонзилa иглу в кожу и ввёл жидкость внутрь")
sleep 2000
SendChat("/procedure " id)
return

Laben2_5:
SendChat("/procedure " id)
return

Laben2_6:
SendChat("/todo Присаживайтесь на кровать*поставив медицинский ящик на тумбу.")
sleep 2000
SendChat("/me схватившись за защелки, потянулa их на себя, после чего открылa крышку ящика и, осмотрев содержимое, вытащилa..")
sleep 2000
SendChat("/do ..из отсека бутылочку с надписью «Отинум на основе 20%-ного холина салицилата», затем сорвалa с нее крышку и..")
sleep 2000
SendChat("/do ..приблизившись к пациенту, наклонилась к уху и начала осмотр беспокоящей пациента области.")
sleep 2000
SendChat("/me осмотрев ухо, немного наклонила голову пациента, после чего поместила пипетку на бутылке в ушную раковину и..")
sleep 2000
SendChat("/do ..направив пипетку на место воспаления, аккуратно надавила на бутылочку.")
sleep 2000
SendChat("/do Препарат выступил из отверстия на пипетки и попал на место воспаления.")
sleep 2000
SendChat("/todo Так, будете проходить эту процедуру до полного исчезновения воспаления*изъяв пипетку из уха и накрутив крышку.")
sleep 2000
SendChat("/todo Полежите пока, пусть капли останутся в ушной раковине*поставив бутылек в контейнер.")
sleep 2000
SendChat("/me закрыла крышку контейнера, защелкнула защелки, после чего взяла его в правую руку. ")
sleep 2000
SendChat("/procedure " id)
return

Laben2_7:
SendChat("/do Пациент находится в горизонтальном положении.")
sleep 2000
SendChat("/do Кейс находится в руке врача.")
sleep 2000
SendChat("/me движениями рук открылa кейс, затем досталa из него стерильные перчатки, после чего...")
sleep 2000
SendChat("/do ...наделa их на обе руки")
sleep 2000
SendChat("/do Руки одеты в стерильные перчатки.")
sleep 2000
SendChat("/todo Посмотрим, что у вас.*начав осматривать тело пациента")
sleep 2000
SendChat("/me резким движением обоих рук задралa кофту лежащего человека")
sleep 2000
SendChat("/me осмотрев часть тела пациента заметилa воспаление красного цвета в области живота")
sleep 2000
SendChat("/me движениями рук досталa из кейса нужную мазь и, открыв крышку, выдавилa смесь на ладонь")
sleep 2000
SendChat("/do Смесь находится на ладони врача.")
sleep 2000
SendChat("/me коловым движением руки сталa натирать мазь по всей области живота")
sleep 2000
SendChat("/todo Повернитесь на бок.*задирая кофту выше")
sleep 2000
SendChat("/me осмотрев область спины пациента заметилa повреждение в области спины после чего... ")
sleep 2000
SendChat("/do ...выдавилa остатки мази и сталa размазывать по спине.")
sleep 2000
SendChat("/todo Лежите до полного впитывания.*снимая перчатки и выкидывая их в урну")
sleep 2000
SendChat("/procedure " id)
return

Laben2_8:
SendChat("/do Кейс c необходимими вещами находится в правой руке в руке.")
sleep 2000
SendChat("/me вертикальными движениями обоих рук открыла нижние защелки кейса после чего...")
sleep 2000
SendChat("/do ...достала пачку с горчичниками.")
sleep 2000
SendChat("/do Пачка c горчичниками находится в руке врача.")
sleep 2000
SendChat("/me протянула правую руку в кейс после чего достала из кейса стерильные перчатки затем... ")
sleep 2000
SendChat("/do ...надела их на обе руки.")
sleep 2000
SendChat("/do Руки были одеты в стерильные перчатки.")
sleep 2000
SendChat("/do На столе стоит подготовленная заранее чаша с чистой тёплой водой.")
sleep 2000
SendChat("/me движениями обоих рук раскрыла пачку с горчичниками, затем достала одну пару")
sleep 2000
SendChat("/me вертикальными движениями обоих рук поместила горчичники в воду")
sleep 2000
SendChat("/todo Задиру кофту.*вымещая набухший горчичник наружу")
sleep 2000
SendChat("/me задернула кофту пациенту")
sleep 2000
SendChat("/me движениями обоих рук расклала горчичник в области грудной клетки")
sleep 2000
SendChat("/do На столе лежит махровое полотенце.")
sleep 2000
SendChat("/me протянула руку к полотенцу затем взяла лежащее полотенце затем... ")
sleep 2000
SendChat("/do ...сложилa его в два слоя, приложилa его к груди пациента.")
sleep 2000
SendChat("/todo Лежите ровно 5 минут.*снимая перчатки и выкидывая их в урну")
sleep 2000
SendChat("/procedure " id)
return

Laben3:
SendChat("Вашу ID-карту и мед. карту пожалуйста.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me положив перед собой ID-карту гражданина, схватил со стола ручку, после чего положил перед собой мед. карту и..")
sleep 2000
SendChat("/do ..смотря в ID-карту начал заполнять строки с именем и фамилией, датой рождения, возрастом и местом жительства.")
sleep 2000
SendChat("/todo Жалобы есть на здоровье?*приподняв голову и посмотрев на гражданина.")
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/todo Угу*вписывая слова гражданина в пустые строки")
sleep 2000
SendChat("/me поставив свою подпись в соответствующей строке, протянул руку к печати, после взял ее и..")
sleep 2000
SendChat("/do ..приподняв с подставке приставил к мед карте и надавил.")
sleep 2000
SendChat("/do На мед. карте осталась яркая печать с надписью: «Los Santos Hospital»")
sleep 2000
SendChat("/todo Можете забирать*отодвинув мед. карту и ID-карту гражданина на противоположную часть стола.")
sleep 2000
SendChat("/medcard " id)
return
}
return
Во первых - скрипт очень длинный, выставляй его файлом. Во вторых - что оптимизировать то?
 

CaJlaT

Овощ
Модератор
2,809
2,596
Помогите оптимизировать скрипт:
АХК для МЗ:
#SingleInstance Force
#Persistent
#NoEnv
#Include SAMP_UDF.ahk
#IfWinActive GTA:SA:MP



$~Enter::
if isInChat() && !isDialogOpen() {
    Sleep 200
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    if(chatInput == "/mhelp") {
        addChatMessage("{FF0000}Левый Alt + 0 - {CC3300}Перезагрузка скрипта")
sleep 300
addChatMessage("{FF0000}ПКМ+Alt - {FFFFFF}Лечение")
sleep 300
addChatMessage("{FF0000}/pmp - {FFFFFF}Первая Медицинская Помощь | {FF0000}ПКМ+Х - {FFFFFF}Диагноз/Медкарта")
return
    } else if(chatInput == "/pmp") {
        sleep 200
        addChatMessage("{FF0000}/perelom - {FFFFFF}ПМП при переломе | {FF0000}/ushib - {FFFFFF}ПМП при ушибе")
sleep 300
addChatMessage("{FF0000}/ozhog - {FFFFFF}ПМП при ожоге")
return
    }
    return
    id := getIdByPed(getTargetPed())
    name := RegExReplace(getPlayerNameById(PId),"_"," ")
    if(id == -1)
        addChatMessage("{0070BA}[AHK]: {FF3333}Ошибка! Вы не захватили игрока.")
        return
        SendChat("Вашу ID-карту и мед. карту пожалуйста.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me положив перед собой ID-карту гражданина, схватил со стола ручку, после чего положил перед собой мед. карту и..")
sleep 2000
SendChat("/do ..смотря в ID-карту начал заполнять строки с именем и фамилией, датой рождения, возрастом и местом жительства.")
sleep 2000
SendChat("/todo Жалобы есть на здоровье?*приподняв голову и посмотрев на гражданина.")
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/todo Угу*вписывая слова гражданина в пустые строки")
sleep 2000
SendChat("/me поставив свою подпись в соответствующей строке, протянул руку к печати, после взял ее и..")
sleep 2000
SendChat("/do ..приподняв с подставке приставил к мед карте и надавил.")
sleep 2000
SendChat("/do На мед. карте осталась яркая печать с надписью: «Los Santos Hospital»")
sleep 2000
SendChat("/todo Можете забирать*отодвинув мед. карту и ID-карту гражданина на противоположную часть стола.")
sleep 2000
SendChat("/medcard " id)
return
    }

return

:?:/pmp::
addChatMessage("{CC3300}ПЕРВАЯ МЕДИЦИНСКАЯ ПОМОЩЬ")
sleep 300
addChatMessage("{FF0000}/perelom - {FFFFFF}ПМП при переломе | {FF0000}/ushib - {FFFFFF}ПМП при ушибе")
sleep 300
addChatMessage("{FF0000}/ozhog - {FFFFFF}ПМП при ожоге")
return

~RButton & h::
id := getIdByPed(getTargetPed())
if (id == -1)
addChatMessageEx("AAAAAA", "Игрок не выбран.")
else {
addChatMessage("•{32CD32} [Успешно]{FFFFFF} Вы начали взаимодействовать с " RegExReplace(getPlayerNameById(id), "_", " "))

ShowDialog(2, "{CC66CC}Лечение", "{CC9933}1. {FFFFFF}Голова`n{CC9933}2. {FFFFFF}Живот`n{CC9933}3. {FFFFFF}Горло`n{CC9933}4. {FFFFFF}Тошнота/Диарея`n{CC9933}5. {FFFFFF}Насморк`n{CC9933}6. {FFFFFF}Обезболивающее`n{CC9933}7. {FFFFFF}Давление`n{CC9933}8. {FFFFFF}Другое", "Ок")
Result := LineResult()
if !Result
  return
goto Labe%Result%
return

Labe1:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Tylenol», после чего достала его")
sleep 2000
SendChat("/todo Цена на данное лекарство - 200$ по ценовой политике МЗ*передав блистер пациенту.")
sleep 2000
SendChat("/heal " id " 200")
sleep 2000
return

Labe2:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Tums», после чего достала его.")
sleep 2000
SendChat("/todo Цена на данное лекарство - 100$ по ценовой политике МЗ*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
sleep 2000
return

Labe3:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("Откройте пожалуйста рот, мне нужно взглянуть на состояние горла.")
sleep 2000
SendChat("/do Пациент открыл(а) рот.")
sleep 3000
SendChat("Понятно, можете закрывать.")
sleep 2000
SendChat("/me посмотрев на содержимое основного отдела мед. ящика, вытащила из него блистер с таблетками")
sleep 2000
SendChat("/do На обратной стороне блистера написано название препарата: «Cepacol».")
sleep 2000
SendChat("/me передав блистер пациенту, сказала:")
sleep 2000
SendChat("Стоимость препарата - 100$, принимайте несколько раз в день в течении недели.")
sleep 2000
SendChat("/heal " id " 100")
sleep 2000
return

Labe4:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Imodium», после чего достала его.")
sleep 2000
SendChat("/todo Цена на данное лекарство - 100$ по ценовой политике МЗ*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
return

Labe5:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, достала из него маленький бутылек")
sleep 2000
SendChat("/do На наклейке бутылька написано название препарата: «Аfrin».")
sleep 2000
SendChat("/todo Вот, держите. Нужно закапывать в нос 3-4 раза в день*передав бутылек каплями пациенту")
sleep 2000
SendChat("Стоимость капель - 75$, насморк должен пройти в течении нескольких дней.")
sleep 2000
SendChat("/heal " id " 75")
sleep 2000
return

Labe6:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Ацетаминофен», после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте при болях*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 300")
return

Labe7:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Лизиноприл», после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте 2 раза в день*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
return

Labe8:
SendChat("Мне ваш симптом знаком...")
sleep 2000
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела нужный блистер, после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте 2 раза в день*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 300")
return
}
return

LAlt & Q::
ShowDialog(2, "{CC66CC}Приветствие", "{FFA500}Приветствие`n{FFA500}Позвать за собой", "Ок")
Result := LineResult()
if !Result
  return
goto, Labee%Result%
return

Labee1:
SendChat("Здравствуйте, я ваш лечащий врач. Что вас беспокоит?")
return

Labee2:
SendChat("Пройдёмте за мной. Я вам помогу.")
return

:?:/perelom::
SendChat("Не совершайте резких движений и всё будет хорошо.")
sleep 2000
SendChat("/do На правом плече висит медицинская сумка.")
sleep 2000
SendChat("/me открыв мед. сумку, достала из неё мед. перчатки")
sleep 2000
SendChat("/me надев перчатки на руки, достала из сумки ампулу с обезболивающим «Фентанил»")
sleep 2000
SendChat("/me надломала ампулу с обезболивающим, тем самым вскрыв её")
sleep 2000
SendChat("/me достав из мед. сумки шприц, достала его из упаковки")
sleep 2000
SendChat("/me засунув шприц в ампулу, набрала в него препарат")
sleep 2000
SendChat("/me воткнув шприц пациенту в близь перелома, ввела лекарство")
sleep 2000
SendChat("/me высунув шприц, положила его в мед. сумку")
sleep 2000
SendChat("/me достав из мед. сумки спрей «Перекись Водорода», обработала им зону кровотечения")
sleep 2000
SendChat("/me убрав спрей «Перекись Водорода» в мед. сумку, достала из неё спрей «Фрост»")
sleep 2000
SendChat("/me обработав зону открытого перелома спреем, убрала его в мед. сумку")
sleep 2000
SendChat("/do Интенсивность выделения крови временно снижена.")
sleep 2000
SendChat("/me достала необходимые крепления для удержания конечности из мед.сумки")
sleep 2000
SendChat("/me производит шинирование места открытого перелома")
sleep 2000
SendChat("/do Шинирование завершено.")
sleep 2000
SendChat("/do Шина плотно сидит на конечности пациента.")
sleep 2000
SendChat("Вот и всё. Не нагружайте ногу, ездите на машине.")
return

:?:/ushib::
SendChat("Не беспокойтесь я вам помогу.")
sleep 2000
SendChat("/do На правом плече висит медицинская сумка.")
sleep 2000
SendChat("/me открыв мед. сумку, достала из неё эластичный бинт")
sleep 2000
SendChat("/me достав из сумки спрей «Фрост», обработала ушиб спреем")
sleep 2000
SendChat("/me убрав спрей в сумку, наложила на конечность пострадавшего эластичных бинт")
sleep 2000
SendChat("/me крепко затянула эластичный бинт")
sleep 2000
SendChat("/do Эластичный бинт плотно сидит на конечности пациента.")
sleep 2000
SendChat("Сейчас доставим вас в больницу и окажем вам дальнейшую мед. помощь. Не переживайте.")
sleep 2000
SendChat("Я помогу вам дойти до кареты скорой помощи.")
sleep 2000
SendChat("/me взяв пострадавшего под руку, помогла ему встать")
sleep 2000
return

:?:/ozhog::
SendChat("/do На правом плече висит открытая мед. сумка.")
sleep 2000
SendChat("/me сняв сумку с плеча, кинула её на пол")
sleep 2000
SendChat("/me достала из сумки мед.ножницы")
sleep 2000
SendChat("/me используя ножницы, освободила обожжённый участок кожи от одежды")
sleep 2000
SendChat("/me достав из сумки спрей «Олазоль», открыла его колпачок")
sleep 2000
SendChat("/me сбрызнула спреем обгоревшие участки кожи, закрыла спрей")
sleep 2000
SendChat("/me убрав его в сумку, достала из неё бинты")
sleep 2000
SendChat("/me наложила повязку из бинтов на ожог")
sleep 2000
SendChat("/do Повязка крепко сидит на ожоге.")
sleep 2000
SendChat("Вот так. А теперь мы доставим вас в больницу для оказания полноценной мед.помощи")
sleep 2000
return

~RButton & x::
id := getIdByPed(getTargetPed())
if (id == -1)
addChatMessageEx("AAAAAA", "Игрок не выбран.")
else {
addChatMessage("•{32CD32} [Успешно]{FFFFFF} Вы начали взаимодействовать с " RegExReplace(getPlayerNameById(id), "_", " "))
ShowDialog(2, "{CC66CC}Диагноз", "{FFA500}1. {FFFFFF}Приём`n{FFA500}2. {FFFFFF}Процедуры`n{FFA500}3. {FFFFFF}Провести мед.осмотр", "Ок")
Result := LineResult()
if !Result
  return
goto Laben%Result%
return

Laben1:
SendChat("Здравствуйте, я ваш лечащий врач " getUserName() ". Покажите ваш паспорт и мед.карту.")
sleep 2000
SendChat("/n /pass " getId()"; /med " getId())
sleep 1500
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/do На плече весит медицинская сумка.")
sleep 2000
SendChat("/me открыла медицинскую сумку, после чего достала из неё блокнот и ручку")
sleep 2000
SendChat("/me открылa чистый лист блокнота, после чего записалa данные пациента")
sleep 2000
SendChat("Расскажите о ваших симптомах.")
sleep 2000
SendChat("/do Блокнот и ручка в руках.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me слушая пациента делает пометки в блокнот")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me сделав выводы о диагнозе написалa его в блокнот, после чего поставилa роспись")
sleep 2000
SendChat("/me оторвав лист из блокнота передалa его пациенту")
sleep 2000
SendChat("/diagnos " id)
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("Оплатить лечение можно в регистратуре на первом этаже больницы")
return

Laben2:
ShowDialog(2, "{CC66CC}Болезни", "{FFA500}1. {FFFFFF}Бронхиальная астма`n{FFA500}2. {FFFFFF}Геморрой`n{FFA500}3. {FFFFFF}Гастрит`n{FFA500}4. {FFFFFF}Туберкулёз VC-01`n{FFA500}5. {FFFFFF}Невроз`n{FFA500}6. {FFFFFF}Мирингит`n{FFA500}7. {FFFFFF}Дерматит VC-02`n{FFA500}8. {FFFFFF}Бронхит VC-03", "Ок")
Result := LineResult()
if !Result
  return
goto Laben2_%Result%
return

Laben2_1:
SendChat("/todo Ну что начнем* кинув взгляд на пациента сидящего на кровати")
sleep 2000
SendChat("Ложитесь на кушетку.")
sleep 2000
SendChat("/do В левой руке находится кейс с необходимыми пренадлежжностями.")
sleep 2000
SendChat("/me протянула левую руку к столу после чего опустила кейс с пренадлежностями затем...")
sleep 2000
SendChat("/do ...легким движением руки отсчелкнула крепления кейса. ")
sleep 2000
SendChat("/me протянула правую руку в кейс после чего достала пару стерильных перчаток из кейса... ")
sleep 2000
SendChat("/do... после чего надела их на обе руки.")
sleep 2000
SendChat("/me протянула обе руки в кейс после чего достала аппарат для ингаляции...")
sleep 2000
SendChat(" /do ..., аптечную упаковку с лекарственным веществом, шприцы и стерильные иглы.")
sleep 2000
SendChat("/me вскрыв упаковку, стала разводить лекарственное вещество, а после заправлять им шприц")
sleep 2000
SendChat("/me в камеру небулайзера залила физиологический раствор, а затем добавила необходимую дозу препарата")
sleep 2000
SendChat("/todo Дышите глубоко через рот.*подставив горлышко ингалятора к носу")
sleep 5000
SendChat("/do Через опредёленное время жидкость в небулайзере закончилась.")
sleep 2000
SendChat("/me акуратными движениями рук убрала горлышко ингалятора в кейс затем... ")
sleep 2000
SendChat("/do ...стала полоскать рот пациенту.")
sleep 2000
SendChat("/todo Держите, проделывайте ингаляцию ежедневно.*передав карманный ингалятор человеку напротив")
sleep 2000
SendChat("/procedure " id)
return

Laben2_2:
SendChat("/todo Опускайте нижнюю часть одежды вместе с бельем*вытащив из кармана пару перчаток.")
sleep 2000
SendChat("/me расправив перчатки, натянула их на руки, после чего направилась к холодильной камере.")
sleep 2000
SendChat("/me подойдя к холодильной камере, взялась за ручку дверцы и потянула ее на себя.")
sleep 2000
SendChat("/do Дверца камеры открылась, внутри лежат и стоят различные препараты, среди которых на полке несколько ректальных свечей.")
sleep 2000
SendChat("/me , взяв одну из свечей, сорвалa с нее обертку, после чего закрылa дверцу камеры и положилa обертку на стол.")
sleep 2000
SendChat("/todo Ложитесь на правый бок и расслабьтесь, не сказал бы, что это приятно*подойдя к пациенту со спины.")
sleep 2000
SendChat("/n Enter - чтобы лечь на кушетку")
sleep 2000
SendChat("/me немного наклонившись, левой рукой чуть-чуть отодвинула левую ягодицу и аккуратно поместила свечу в анус.")
sleep 2000
SendChat("/me наполовину введя свечу, задержала ее в таком положении на 20 секунд.")
sleep 2000
SendChat("/me аккуратно протолкнула свечу до конца в прямую кишку, после чего встала в полный рост, сняла перчатки и сказала: ")
sleep 2000
SendChat("Можете одеваться.")
sleep 2000
SendChat("/todo Желательно полежать пару минут*выкинув перчатки в урну.")
sleep 2000
return

Laben2_3:
SendChat("Ложитесь на правый бок на кушетку.")
sleep 2000
SendChat("/do Рядом с кушеткой стойка с различными мед. приборами и инструментами. Около кушетки различные..")
sleep 2000
SendChat("/do ..аппараты для проведения процедур, обследований и операций, среди которых гастроскоп.")
sleep 2000
SendChat("/me схватив с подставки перчатки, наделa их на руки, после чего взялa трубку гастроскопа и сказал:")
sleep 2000
SendChat("Откройте рот, будет немного неприятно, пытайтесь потерпеть.")
sleep 2000
SendChat("При рвотных позывах поднимите руку.")
sleep 2000
SendChat("/me нажав на кнопку включения гастроскопа, посмотрелa на экран.")
sleep 2000
SendChat("/me поместив конец трубки с камерой в ротовую полость пациента, началa аккуратно проталкивать ее в пищевод, попутно..")
sleep 2000
SendChat("/do ..наблюдая за картинкой на экране.")
sleep 2000
SendChat("/me поочередно осмотрев пищевод и желудок при помощи гастроскопа и экрана с изображением,..")
sleep 2000
SendChat("/do ..аккуратно изъялa гастроскоп из пищевода, а после из ротовой полости пациента.")
sleep 2000
SendChat("/todo Обследование закончено*положив гастроскоп на пустую подставку.")
sleep 2000
SendChat("Желательно пить три раза в день капсулы Омеза во время еды, так же..")
sleep 2000
SendChat("..временно отказаться от жирной, острой и прочей тяжелой пищи.")
sleep 2000
SendChat("Пейте больше воды, желательно не меньше 2-х литров в день, а пока..")
sleep 2000
SendChat("/me достала из медицинской сумки блистер с названием «Омез»")
sleep 2000
SendChat("/todo ..а пока принимайте это*протянув блистер пациенту. ")
sleep 2000
SendChat("/procedure " id)
return

Laben2_4:
SendChat("/do Перчатки находятся на столе слева от пациента.")
sleep 2000
SendChat("/me несколькими движениями рук взялa стерильную пару латексных перчаток со стола... ")
sleep 2000
SendChat("/do ...затем наделa их на обе руки.")
sleep 2000
SendChat("/do На столе находится вата и медицинский спирт.")
sleep 2000
SendChat("/me оторвав приличное количество ваты, сталa переворачивать баночку с спиртом...")
sleep 2000
SendChat("/do ...в горлышке придерживая её слоем ватки тем самым обмочив ватку.")
sleep 2000
SendChat("/me коловыми движенями руки протёрла место для укола")
sleep 2000
SendChat("/do На столе находится колба с жидкостью и упаковка шприцов.")
sleep 2000
SendChat("/me раскрыв упаковку, достала шприц затем вставила иглу в колбу после чего...")
sleep 2000
SendChat("/do ...начала на себя тянуть поршень шприца тем самым набрала раствор в шприц.")
sleep 2000
SendChat("/do Раствор введён в шприц.")
sleep 2000
SendChat("/me подвeлa иглу к обеззараженному месту, после чего вонзилa иглу в кожу и ввёл жидкость внутрь")
sleep 2000
SendChat("/procedure " id)
return

Laben2_5:
SendChat("/procedure " id)
return

Laben2_6:
SendChat("/todo Присаживайтесь на кровать*поставив медицинский ящик на тумбу.")
sleep 2000
SendChat("/me схватившись за защелки, потянулa их на себя, после чего открылa крышку ящика и, осмотрев содержимое, вытащилa..")
sleep 2000
SendChat("/do ..из отсека бутылочку с надписью «Отинум на основе 20%-ного холина салицилата», затем сорвалa с нее крышку и..")
sleep 2000
SendChat("/do ..приблизившись к пациенту, наклонилась к уху и начала осмотр беспокоящей пациента области.")
sleep 2000
SendChat("/me осмотрев ухо, немного наклонила голову пациента, после чего поместила пипетку на бутылке в ушную раковину и..")
sleep 2000
SendChat("/do ..направив пипетку на место воспаления, аккуратно надавила на бутылочку.")
sleep 2000
SendChat("/do Препарат выступил из отверстия на пипетки и попал на место воспаления.")
sleep 2000
SendChat("/todo Так, будете проходить эту процедуру до полного исчезновения воспаления*изъяв пипетку из уха и накрутив крышку.")
sleep 2000
SendChat("/todo Полежите пока, пусть капли останутся в ушной раковине*поставив бутылек в контейнер.")
sleep 2000
SendChat("/me закрыла крышку контейнера, защелкнула защелки, после чего взяла его в правую руку. ")
sleep 2000
SendChat("/procedure " id)
return

Laben2_7:
SendChat("/do Пациент находится в горизонтальном положении.")
sleep 2000
SendChat("/do Кейс находится в руке врача.")
sleep 2000
SendChat("/me движениями рук открылa кейс, затем досталa из него стерильные перчатки, после чего...")
sleep 2000
SendChat("/do ...наделa их на обе руки")
sleep 2000
SendChat("/do Руки одеты в стерильные перчатки.")
sleep 2000
SendChat("/todo Посмотрим, что у вас.*начав осматривать тело пациента")
sleep 2000
SendChat("/me резким движением обоих рук задралa кофту лежащего человека")
sleep 2000
SendChat("/me осмотрев часть тела пациента заметилa воспаление красного цвета в области живота")
sleep 2000
SendChat("/me движениями рук досталa из кейса нужную мазь и, открыв крышку, выдавилa смесь на ладонь")
sleep 2000
SendChat("/do Смесь находится на ладони врача.")
sleep 2000
SendChat("/me коловым движением руки сталa натирать мазь по всей области живота")
sleep 2000
SendChat("/todo Повернитесь на бок.*задирая кофту выше")
sleep 2000
SendChat("/me осмотрев область спины пациента заметилa повреждение в области спины после чего... ")
sleep 2000
SendChat("/do ...выдавилa остатки мази и сталa размазывать по спине.")
sleep 2000
SendChat("/todo Лежите до полного впитывания.*снимая перчатки и выкидывая их в урну")
sleep 2000
SendChat("/procedure " id)
return

Laben2_8:
SendChat("/do Кейс c необходимими вещами находится в правой руке в руке.")
sleep 2000
SendChat("/me вертикальными движениями обоих рук открыла нижние защелки кейса после чего...")
sleep 2000
SendChat("/do ...достала пачку с горчичниками.")
sleep 2000
SendChat("/do Пачка c горчичниками находится в руке врача.")
sleep 2000
SendChat("/me протянула правую руку в кейс после чего достала из кейса стерильные перчатки затем... ")
sleep 2000
SendChat("/do ...надела их на обе руки.")
sleep 2000
SendChat("/do Руки были одеты в стерильные перчатки.")
sleep 2000
SendChat("/do На столе стоит подготовленная заранее чаша с чистой тёплой водой.")
sleep 2000
SendChat("/me движениями обоих рук раскрыла пачку с горчичниками, затем достала одну пару")
sleep 2000
SendChat("/me вертикальными движениями обоих рук поместила горчичники в воду")
sleep 2000
SendChat("/todo Задиру кофту.*вымещая набухший горчичник наружу")
sleep 2000
SendChat("/me задернула кофту пациенту")
sleep 2000
SendChat("/me движениями обоих рук расклала горчичник в области грудной клетки")
sleep 2000
SendChat("/do На столе лежит махровое полотенце.")
sleep 2000
SendChat("/me протянула руку к полотенцу затем взяла лежащее полотенце затем... ")
sleep 2000
SendChat("/do ...сложилa его в два слоя, приложилa его к груди пациента.")
sleep 2000
SendChat("/todo Лежите ровно 5 минут.*снимая перчатки и выкидывая их в урну")
sleep 2000
SendChat("/procedure " id)
return

Laben3:
SendChat("Вашу ID-карту и мед. карту пожалуйста.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me положив перед собой ID-карту гражданина, схватил со стола ручку, после чего положил перед собой мед. карту и..")
sleep 2000
SendChat("/do ..смотря в ID-карту начал заполнять строки с именем и фамилией, датой рождения, возрастом и местом жительства.")
sleep 2000
SendChat("/todo Жалобы есть на здоровье?*приподняв голову и посмотрев на гражданина.")
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/todo Угу*вписывая слова гражданина в пустые строки")
sleep 2000
SendChat("/me поставив свою подпись в соответствующей строке, протянул руку к печати, после взял ее и..")
sleep 2000
SendChat("/do ..приподняв с подставке приставил к мед карте и надавил.")
sleep 2000
SendChat("/do На мед. карте осталась яркая печать с надписью: «Los Santos Hospital»")
sleep 2000
SendChat("/todo Можете забирать*отодвинув мед. карту и ID-карту гражданина на противоположную часть стола.")
sleep 2000
SendChat("/medcard " id)
return
}
return
1. Вставь код в BB-код
43369

43370
2. расставь табуляцию
 

degrando

Известный
362
127
Помогите оптимизировать скрипт:
АХК для МЗ:
#SingleInstance Force
#Persistent
#NoEnv
#Include SAMP_UDF.ahk
#IfWinActive GTA:SA:MP



$~Enter::
if isInChat() && !isDialogOpen() {
    Sleep 200
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    if(chatInput == "/mhelp") {
        addChatMessage("{FF0000}Левый Alt + 0 - {CC3300}Перезагрузка скрипта")
sleep 300
addChatMessage("{FF0000}ПКМ+Alt - {FFFFFF}Лечение")
sleep 300
addChatMessage("{FF0000}/pmp - {FFFFFF}Первая Медицинская Помощь | {FF0000}ПКМ+Х - {FFFFFF}Диагноз/Медкарта")
return
    } else if(chatInput == "/pmp") {
        sleep 200
        addChatMessage("{FF0000}/perelom - {FFFFFF}ПМП при переломе | {FF0000}/ushib - {FFFFFF}ПМП при ушибе")
sleep 300
addChatMessage("{FF0000}/ozhog - {FFFFFF}ПМП при ожоге")
return
    }
    return
    id := getIdByPed(getTargetPed())
    name := RegExReplace(getPlayerNameById(PId),"_"," ")
    if(id == -1)
        addChatMessage("{0070BA}[AHK]: {FF3333}Ошибка! Вы не захватили игрока.")
        return
        SendChat("Вашу ID-карту и мед. карту пожалуйста.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me положив перед собой ID-карту гражданина, схватил со стола ручку, после чего положил перед собой мед. карту и..")
sleep 2000
SendChat("/do ..смотря в ID-карту начал заполнять строки с именем и фамилией, датой рождения, возрастом и местом жительства.")
sleep 2000
SendChat("/todo Жалобы есть на здоровье?*приподняв голову и посмотрев на гражданина.")
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/todo Угу*вписывая слова гражданина в пустые строки")
sleep 2000
SendChat("/me поставив свою подпись в соответствующей строке, протянул руку к печати, после взял ее и..")
sleep 2000
SendChat("/do ..приподняв с подставке приставил к мед карте и надавил.")
sleep 2000
SendChat("/do На мед. карте осталась яркая печать с надписью: «Los Santos Hospital»")
sleep 2000
SendChat("/todo Можете забирать*отодвинув мед. карту и ID-карту гражданина на противоположную часть стола.")
sleep 2000
SendChat("/medcard " id)
return
    }

return

:?:/pmp::
addChatMessage("{CC3300}ПЕРВАЯ МЕДИЦИНСКАЯ ПОМОЩЬ")
sleep 300
addChatMessage("{FF0000}/perelom - {FFFFFF}ПМП при переломе | {FF0000}/ushib - {FFFFFF}ПМП при ушибе")
sleep 300
addChatMessage("{FF0000}/ozhog - {FFFFFF}ПМП при ожоге")
return

~RButton & h::
id := getIdByPed(getTargetPed())
if (id == -1)
addChatMessageEx("AAAAAA", "Игрок не выбран.")
else {
addChatMessage("•{32CD32} [Успешно]{FFFFFF} Вы начали взаимодействовать с " RegExReplace(getPlayerNameById(id), "_", " "))

ShowDialog(2, "{CC66CC}Лечение", "{CC9933}1. {FFFFFF}Голова`n{CC9933}2. {FFFFFF}Живот`n{CC9933}3. {FFFFFF}Горло`n{CC9933}4. {FFFFFF}Тошнота/Диарея`n{CC9933}5. {FFFFFF}Насморк`n{CC9933}6. {FFFFFF}Обезболивающее`n{CC9933}7. {FFFFFF}Давление`n{CC9933}8. {FFFFFF}Другое", "Ок")
Result := LineResult()
if !Result
  return
goto Labe%Result%
return

Labe1:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Tylenol», после чего достала его")
sleep 2000
SendChat("/todo Цена на данное лекарство - 200$ по ценовой политике МЗ*передав блистер пациенту.")
sleep 2000
SendChat("/heal " id " 200")
sleep 2000
return

Labe2:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Tums», после чего достала его.")
sleep 2000
SendChat("/todo Цена на данное лекарство - 100$ по ценовой политике МЗ*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
sleep 2000
return

Labe3:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("Откройте пожалуйста рот, мне нужно взглянуть на состояние горла.")
sleep 2000
SendChat("/do Пациент открыл(а) рот.")
sleep 3000
SendChat("Понятно, можете закрывать.")
sleep 2000
SendChat("/me посмотрев на содержимое основного отдела мед. ящика, вытащила из него блистер с таблетками")
sleep 2000
SendChat("/do На обратной стороне блистера написано название препарата: «Cepacol».")
sleep 2000
SendChat("/me передав блистер пациенту, сказала:")
sleep 2000
SendChat("Стоимость препарата - 100$, принимайте несколько раз в день в течении недели.")
sleep 2000
SendChat("/heal " id " 100")
sleep 2000
return

Labe4:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me , потянув за защелки, открыла крышку ящика, после чего мельком взглянула на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Imodium», после чего достала его.")
sleep 2000
SendChat("/todo Цена на данное лекарство - 100$ по ценовой политике МЗ*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
return

Labe5:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, достала из него маленький бутылек")
sleep 2000
SendChat("/do На наклейке бутылька написано название препарата: «Аfrin».")
sleep 2000
SendChat("/todo Вот, держите. Нужно закапывать в нос 3-4 раза в день*передав бутылек каплями пациенту")
sleep 2000
SendChat("Стоимость капель - 75$, насморк должен пройти в течении нескольких дней.")
sleep 2000
SendChat("/heal " id " 75")
sleep 2000
return

Labe6:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Ацетаминофен», после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте при болях*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 300")
return

Labe7:
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела блистер с названием «Лизиноприл», после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте 2 раза в день*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 100")
return

Labe8:
SendChat("Мне ваш симптом знаком...")
sleep 2000
SendChat("/me правой рукой держит медицинский ящик на уровне бедра")
sleep 2000
SendChat("/todo Секунду*схватившись за защелки на крышке ящика левой рукой..")
sleep 2000
SendChat("/me потянув за защелки, открылa крышку ящика, после чего мельком взглянулa на содержимое")
sleep 2000
SendChat("/do Внутри ящика лежат различные препараты и мед. принадлежности.")
sleep 2000
SendChat("/me немного порывшись в ящике, увидела нужный блистер, после чего достала его.")
sleep 2000
SendChat("/todo Вот, держите. Принимайте 2 раза в день*передав блистер пациенту")
sleep 2000
SendChat("/heal " id " 300")
return
}
return

LAlt & Q::
ShowDialog(2, "{CC66CC}Приветствие", "{FFA500}Приветствие`n{FFA500}Позвать за собой", "Ок")
Result := LineResult()
if !Result
  return
goto, Labee%Result%
return

Labee1:
SendChat("Здравствуйте, я ваш лечащий врач. Что вас беспокоит?")
return

Labee2:
SendChat("Пройдёмте за мной. Я вам помогу.")
return

:?:/perelom::
SendChat("Не совершайте резких движений и всё будет хорошо.")
sleep 2000
SendChat("/do На правом плече висит медицинская сумка.")
sleep 2000
SendChat("/me открыв мед. сумку, достала из неё мед. перчатки")
sleep 2000
SendChat("/me надев перчатки на руки, достала из сумки ампулу с обезболивающим «Фентанил»")
sleep 2000
SendChat("/me надломала ампулу с обезболивающим, тем самым вскрыв её")
sleep 2000
SendChat("/me достав из мед. сумки шприц, достала его из упаковки")
sleep 2000
SendChat("/me засунув шприц в ампулу, набрала в него препарат")
sleep 2000
SendChat("/me воткнув шприц пациенту в близь перелома, ввела лекарство")
sleep 2000
SendChat("/me высунув шприц, положила его в мед. сумку")
sleep 2000
SendChat("/me достав из мед. сумки спрей «Перекись Водорода», обработала им зону кровотечения")
sleep 2000
SendChat("/me убрав спрей «Перекись Водорода» в мед. сумку, достала из неё спрей «Фрост»")
sleep 2000
SendChat("/me обработав зону открытого перелома спреем, убрала его в мед. сумку")
sleep 2000
SendChat("/do Интенсивность выделения крови временно снижена.")
sleep 2000
SendChat("/me достала необходимые крепления для удержания конечности из мед.сумки")
sleep 2000
SendChat("/me производит шинирование места открытого перелома")
sleep 2000
SendChat("/do Шинирование завершено.")
sleep 2000
SendChat("/do Шина плотно сидит на конечности пациента.")
sleep 2000
SendChat("Вот и всё. Не нагружайте ногу, ездите на машине.")
return

:?:/ushib::
SendChat("Не беспокойтесь я вам помогу.")
sleep 2000
SendChat("/do На правом плече висит медицинская сумка.")
sleep 2000
SendChat("/me открыв мед. сумку, достала из неё эластичный бинт")
sleep 2000
SendChat("/me достав из сумки спрей «Фрост», обработала ушиб спреем")
sleep 2000
SendChat("/me убрав спрей в сумку, наложила на конечность пострадавшего эластичных бинт")
sleep 2000
SendChat("/me крепко затянула эластичный бинт")
sleep 2000
SendChat("/do Эластичный бинт плотно сидит на конечности пациента.")
sleep 2000
SendChat("Сейчас доставим вас в больницу и окажем вам дальнейшую мед. помощь. Не переживайте.")
sleep 2000
SendChat("Я помогу вам дойти до кареты скорой помощи.")
sleep 2000
SendChat("/me взяв пострадавшего под руку, помогла ему встать")
sleep 2000
return

:?:/ozhog::
SendChat("/do На правом плече висит открытая мед. сумка.")
sleep 2000
SendChat("/me сняв сумку с плеча, кинула её на пол")
sleep 2000
SendChat("/me достала из сумки мед.ножницы")
sleep 2000
SendChat("/me используя ножницы, освободила обожжённый участок кожи от одежды")
sleep 2000
SendChat("/me достав из сумки спрей «Олазоль», открыла его колпачок")
sleep 2000
SendChat("/me сбрызнула спреем обгоревшие участки кожи, закрыла спрей")
sleep 2000
SendChat("/me убрав его в сумку, достала из неё бинты")
sleep 2000
SendChat("/me наложила повязку из бинтов на ожог")
sleep 2000
SendChat("/do Повязка крепко сидит на ожоге.")
sleep 2000
SendChat("Вот так. А теперь мы доставим вас в больницу для оказания полноценной мед.помощи")
sleep 2000
return

~RButton & x::
id := getIdByPed(getTargetPed())
if (id == -1)
addChatMessageEx("AAAAAA", "Игрок не выбран.")
else {
addChatMessage("•{32CD32} [Успешно]{FFFFFF} Вы начали взаимодействовать с " RegExReplace(getPlayerNameById(id), "_", " "))
ShowDialog(2, "{CC66CC}Диагноз", "{FFA500}1. {FFFFFF}Приём`n{FFA500}2. {FFFFFF}Процедуры`n{FFA500}3. {FFFFFF}Провести мед.осмотр", "Ок")
Result := LineResult()
if !Result
  return
goto Laben%Result%
return

Laben1:
SendChat("Здравствуйте, я ваш лечащий врач " getUserName() ". Покажите ваш паспорт и мед.карту.")
sleep 2000
SendChat("/n /pass " getId()"; /med " getId())
sleep 1500
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/do На плече весит медицинская сумка.")
sleep 2000
SendChat("/me открыла медицинскую сумку, после чего достала из неё блокнот и ручку")
sleep 2000
SendChat("/me открылa чистый лист блокнота, после чего записалa данные пациента")
sleep 2000
SendChat("Расскажите о ваших симптомах.")
sleep 2000
SendChat("/do Блокнот и ручка в руках.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me слушая пациента делает пометки в блокнот")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me сделав выводы о диагнозе написалa его в блокнот, после чего поставилa роспись")
sleep 2000
SendChat("/me оторвав лист из блокнота передалa его пациенту")
sleep 2000
SendChat("/diagnos " id)
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] {FFFFFF}Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("Оплатить лечение можно в регистратуре на первом этаже больницы")
return

Laben2:
ShowDialog(2, "{CC66CC}Болезни", "{FFA500}1. {FFFFFF}Бронхиальная астма`n{FFA500}2. {FFFFFF}Геморрой`n{FFA500}3. {FFFFFF}Гастрит`n{FFA500}4. {FFFFFF}Туберкулёз VC-01`n{FFA500}5. {FFFFFF}Невроз`n{FFA500}6. {FFFFFF}Мирингит`n{FFA500}7. {FFFFFF}Дерматит VC-02`n{FFA500}8. {FFFFFF}Бронхит VC-03", "Ок")
Result := LineResult()
if !Result
  return
goto Laben2_%Result%
return

Laben2_1:
SendChat("/todo Ну что начнем* кинув взгляд на пациента сидящего на кровати")
sleep 2000
SendChat("Ложитесь на кушетку.")
sleep 2000
SendChat("/do В левой руке находится кейс с необходимыми пренадлежжностями.")
sleep 2000
SendChat("/me протянула левую руку к столу после чего опустила кейс с пренадлежностями затем...")
sleep 2000
SendChat("/do ...легким движением руки отсчелкнула крепления кейса. ")
sleep 2000
SendChat("/me протянула правую руку в кейс после чего достала пару стерильных перчаток из кейса... ")
sleep 2000
SendChat("/do... после чего надела их на обе руки.")
sleep 2000
SendChat("/me протянула обе руки в кейс после чего достала аппарат для ингаляции...")
sleep 2000
SendChat(" /do ..., аптечную упаковку с лекарственным веществом, шприцы и стерильные иглы.")
sleep 2000
SendChat("/me вскрыв упаковку, стала разводить лекарственное вещество, а после заправлять им шприц")
sleep 2000
SendChat("/me в камеру небулайзера залила физиологический раствор, а затем добавила необходимую дозу препарата")
sleep 2000
SendChat("/todo Дышите глубоко через рот.*подставив горлышко ингалятора к носу")
sleep 5000
SendChat("/do Через опредёленное время жидкость в небулайзере закончилась.")
sleep 2000
SendChat("/me акуратными движениями рук убрала горлышко ингалятора в кейс затем... ")
sleep 2000
SendChat("/do ...стала полоскать рот пациенту.")
sleep 2000
SendChat("/todo Держите, проделывайте ингаляцию ежедневно.*передав карманный ингалятор человеку напротив")
sleep 2000
SendChat("/procedure " id)
return

Laben2_2:
SendChat("/todo Опускайте нижнюю часть одежды вместе с бельем*вытащив из кармана пару перчаток.")
sleep 2000
SendChat("/me расправив перчатки, натянула их на руки, после чего направилась к холодильной камере.")
sleep 2000
SendChat("/me подойдя к холодильной камере, взялась за ручку дверцы и потянула ее на себя.")
sleep 2000
SendChat("/do Дверца камеры открылась, внутри лежат и стоят различные препараты, среди которых на полке несколько ректальных свечей.")
sleep 2000
SendChat("/me , взяв одну из свечей, сорвалa с нее обертку, после чего закрылa дверцу камеры и положилa обертку на стол.")
sleep 2000
SendChat("/todo Ложитесь на правый бок и расслабьтесь, не сказал бы, что это приятно*подойдя к пациенту со спины.")
sleep 2000
SendChat("/n Enter - чтобы лечь на кушетку")
sleep 2000
SendChat("/me немного наклонившись, левой рукой чуть-чуть отодвинула левую ягодицу и аккуратно поместила свечу в анус.")
sleep 2000
SendChat("/me наполовину введя свечу, задержала ее в таком положении на 20 секунд.")
sleep 2000
SendChat("/me аккуратно протолкнула свечу до конца в прямую кишку, после чего встала в полный рост, сняла перчатки и сказала: ")
sleep 2000
SendChat("Можете одеваться.")
sleep 2000
SendChat("/todo Желательно полежать пару минут*выкинув перчатки в урну.")
sleep 2000
return

Laben2_3:
SendChat("Ложитесь на правый бок на кушетку.")
sleep 2000
SendChat("/do Рядом с кушеткой стойка с различными мед. приборами и инструментами. Около кушетки различные..")
sleep 2000
SendChat("/do ..аппараты для проведения процедур, обследований и операций, среди которых гастроскоп.")
sleep 2000
SendChat("/me схватив с подставки перчатки, наделa их на руки, после чего взялa трубку гастроскопа и сказал:")
sleep 2000
SendChat("Откройте рот, будет немного неприятно, пытайтесь потерпеть.")
sleep 2000
SendChat("При рвотных позывах поднимите руку.")
sleep 2000
SendChat("/me нажав на кнопку включения гастроскопа, посмотрелa на экран.")
sleep 2000
SendChat("/me поместив конец трубки с камерой в ротовую полость пациента, началa аккуратно проталкивать ее в пищевод, попутно..")
sleep 2000
SendChat("/do ..наблюдая за картинкой на экране.")
sleep 2000
SendChat("/me поочередно осмотрев пищевод и желудок при помощи гастроскопа и экрана с изображением,..")
sleep 2000
SendChat("/do ..аккуратно изъялa гастроскоп из пищевода, а после из ротовой полости пациента.")
sleep 2000
SendChat("/todo Обследование закончено*положив гастроскоп на пустую подставку.")
sleep 2000
SendChat("Желательно пить три раза в день капсулы Омеза во время еды, так же..")
sleep 2000
SendChat("..временно отказаться от жирной, острой и прочей тяжелой пищи.")
sleep 2000
SendChat("Пейте больше воды, желательно не меньше 2-х литров в день, а пока..")
sleep 2000
SendChat("/me достала из медицинской сумки блистер с названием «Омез»")
sleep 2000
SendChat("/todo ..а пока принимайте это*протянув блистер пациенту. ")
sleep 2000
SendChat("/procedure " id)
return

Laben2_4:
SendChat("/do Перчатки находятся на столе слева от пациента.")
sleep 2000
SendChat("/me несколькими движениями рук взялa стерильную пару латексных перчаток со стола... ")
sleep 2000
SendChat("/do ...затем наделa их на обе руки.")
sleep 2000
SendChat("/do На столе находится вата и медицинский спирт.")
sleep 2000
SendChat("/me оторвав приличное количество ваты, сталa переворачивать баночку с спиртом...")
sleep 2000
SendChat("/do ...в горлышке придерживая её слоем ватки тем самым обмочив ватку.")
sleep 2000
SendChat("/me коловыми движенями руки протёрла место для укола")
sleep 2000
SendChat("/do На столе находится колба с жидкостью и упаковка шприцов.")
sleep 2000
SendChat("/me раскрыв упаковку, достала шприц затем вставила иглу в колбу после чего...")
sleep 2000
SendChat("/do ...начала на себя тянуть поршень шприца тем самым набрала раствор в шприц.")
sleep 2000
SendChat("/do Раствор введён в шприц.")
sleep 2000
SendChat("/me подвeлa иглу к обеззараженному месту, после чего вонзилa иглу в кожу и ввёл жидкость внутрь")
sleep 2000
SendChat("/procedure " id)
return

Laben2_5:
SendChat("/procedure " id)
return

Laben2_6:
SendChat("/todo Присаживайтесь на кровать*поставив медицинский ящик на тумбу.")
sleep 2000
SendChat("/me схватившись за защелки, потянулa их на себя, после чего открылa крышку ящика и, осмотрев содержимое, вытащилa..")
sleep 2000
SendChat("/do ..из отсека бутылочку с надписью «Отинум на основе 20%-ного холина салицилата», затем сорвалa с нее крышку и..")
sleep 2000
SendChat("/do ..приблизившись к пациенту, наклонилась к уху и начала осмотр беспокоящей пациента области.")
sleep 2000
SendChat("/me осмотрев ухо, немного наклонила голову пациента, после чего поместила пипетку на бутылке в ушную раковину и..")
sleep 2000
SendChat("/do ..направив пипетку на место воспаления, аккуратно надавила на бутылочку.")
sleep 2000
SendChat("/do Препарат выступил из отверстия на пипетки и попал на место воспаления.")
sleep 2000
SendChat("/todo Так, будете проходить эту процедуру до полного исчезновения воспаления*изъяв пипетку из уха и накрутив крышку.")
sleep 2000
SendChat("/todo Полежите пока, пусть капли останутся в ушной раковине*поставив бутылек в контейнер.")
sleep 2000
SendChat("/me закрыла крышку контейнера, защелкнула защелки, после чего взяла его в правую руку. ")
sleep 2000
SendChat("/procedure " id)
return

Laben2_7:
SendChat("/do Пациент находится в горизонтальном положении.")
sleep 2000
SendChat("/do Кейс находится в руке врача.")
sleep 2000
SendChat("/me движениями рук открылa кейс, затем досталa из него стерильные перчатки, после чего...")
sleep 2000
SendChat("/do ...наделa их на обе руки")
sleep 2000
SendChat("/do Руки одеты в стерильные перчатки.")
sleep 2000
SendChat("/todo Посмотрим, что у вас.*начав осматривать тело пациента")
sleep 2000
SendChat("/me резким движением обоих рук задралa кофту лежащего человека")
sleep 2000
SendChat("/me осмотрев часть тела пациента заметилa воспаление красного цвета в области живота")
sleep 2000
SendChat("/me движениями рук досталa из кейса нужную мазь и, открыв крышку, выдавилa смесь на ладонь")
sleep 2000
SendChat("/do Смесь находится на ладони врача.")
sleep 2000
SendChat("/me коловым движением руки сталa натирать мазь по всей области живота")
sleep 2000
SendChat("/todo Повернитесь на бок.*задирая кофту выше")
sleep 2000
SendChat("/me осмотрев область спины пациента заметилa повреждение в области спины после чего... ")
sleep 2000
SendChat("/do ...выдавилa остатки мази и сталa размазывать по спине.")
sleep 2000
SendChat("/todo Лежите до полного впитывания.*снимая перчатки и выкидывая их в урну")
sleep 2000
SendChat("/procedure " id)
return

Laben2_8:
SendChat("/do Кейс c необходимими вещами находится в правой руке в руке.")
sleep 2000
SendChat("/me вертикальными движениями обоих рук открыла нижние защелки кейса после чего...")
sleep 2000
SendChat("/do ...достала пачку с горчичниками.")
sleep 2000
SendChat("/do Пачка c горчичниками находится в руке врача.")
sleep 2000
SendChat("/me протянула правую руку в кейс после чего достала из кейса стерильные перчатки затем... ")
sleep 2000
SendChat("/do ...надела их на обе руки.")
sleep 2000
SendChat("/do Руки были одеты в стерильные перчатки.")
sleep 2000
SendChat("/do На столе стоит подготовленная заранее чаша с чистой тёплой водой.")
sleep 2000
SendChat("/me движениями обоих рук раскрыла пачку с горчичниками, затем достала одну пару")
sleep 2000
SendChat("/me вертикальными движениями обоих рук поместила горчичники в воду")
sleep 2000
SendChat("/todo Задиру кофту.*вымещая набухший горчичник наружу")
sleep 2000
SendChat("/me задернула кофту пациенту")
sleep 2000
SendChat("/me движениями обоих рук расклала горчичник в области грудной клетки")
sleep 2000
SendChat("/do На столе лежит махровое полотенце.")
sleep 2000
SendChat("/me протянула руку к полотенцу затем взяла лежащее полотенце затем... ")
sleep 2000
SendChat("/do ...сложилa его в два слоя, приложилa его к груди пациента.")
sleep 2000
SendChat("/todo Лежите ровно 5 минут.*снимая перчатки и выкидывая их в урну")
sleep 2000
SendChat("/procedure " id)
return

Laben3:
SendChat("Вашу ID-карту и мед. карту пожалуйста.")
sleep 2000
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/me положив перед собой ID-карту гражданина, схватил со стола ручку, после чего положил перед собой мед. карту и..")
sleep 2000
SendChat("/do ..смотря в ID-карту начал заполнять строки с именем и фамилией, датой рождения, возрастом и местом жительства.")
sleep 2000
SendChat("/todo Жалобы есть на здоровье?*приподняв голову и посмотрев на гражданина.")
AddChatmessage("{FFA500}[ПОДСКАЗКА] Нажмите 1, чтобы продолжить...")
while !getkeystate("1", "P")
    continue
SendChat("/todo Угу*вписывая слова гражданина в пустые строки")
sleep 2000
SendChat("/me поставив свою подпись в соответствующей строке, протянул руку к печати, после взял ее и..")
sleep 2000
SendChat("/do ..приподняв с подставке приставил к мед карте и надавил.")
sleep 2000
SendChat("/do На мед. карте осталась яркая печать с надписью: «Los Santos Hospital»")
sleep 2000
SendChat("/todo Можете забирать*отодвинув мед. карту и ID-карту гражданина на противоположную часть стола.")
sleep 2000
SendChat("/medcard " id)
return
}
return
 
  • Нравится
Реакции: CaJlaT

KhanWarden

Участник
42
3
Не работает. Скрипт пропал, через 3 секунды снова появился, я открываю. Без изменений.
 

KhanWarden

Участник
42
3
Как сделать так, чтобы пароль от диалога был 2712. Если пользователь ввёл неверный код, тогда "Ошибка! Вы ввели неверный пароль." Вот я начал код:
Ахк:
ShowDialog(1, "Профессиональный Отдел Центра Лицензирования", "Введите пароль от раздела:", "Подтвердить")
Input, Password, L4, {Enter}
sleep 100
if(Password)
Ты хоть знаешь как он работает?
Как? Что оно делает?
 

CaJlaT

Овощ
Модератор
2,809
2,596
Как сделать так, чтобы пароль от диалога был 2712. Если пользователь ввёл неверный код, тогда "Ошибка! Вы ввели неверный пароль." Вот я начал код:
Ахк:
ShowDialog(1, "Профессиональный Отдел Центра Лицензирования", "Введите пароль от раздела:", "Подтвердить")
Input, Password, L4, {Enter}
sleep 100
if(Password)

Как? Что оно делает?
Актуально?
AutoHotKey:
Passdialog:
{
    ShowDialog(1, "Профессиональный Отдел Центра Лицензирования", "Введите пароль от раздела:", "Подтвердить")
    while (isDialogOpen())
    {
        if (GetKeyState("Escape", "P") or (isDialogButtonSelected(1) = true and GetKeyState("LButton", "P")))
        {
            Gosub, metka
            return
        }
    }
    inputText := readString(hGTA, dwSAMP + 0x12D8F8, 256)
    Password := inputText
    Gosub, metka
    Return
}
metka:
{
    if (Password == твой пароль)
    {
        AddChatMessageEx("800080", "[AHK] Доступ получен!")
        ;твой код
    }
    else
    {
        AddChatMessageEx("FF0000", "[AHK] Не верный пароль!")
        goto, Passdialog
    }
    Return
}
 
Последнее редактирование:
  • Нравится
Реакции: BASS_DEVSOFTWARE

Roman Grudov

Известный
209
83
AutoHotKey:
while(true)
{
cl = %A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
    Words = ([Вв][Ыы].тут?|[Тт]ут?|[Бб]от?|[Bb]ot?|[Тт]ы.тут?);тут можешь менять ключевые фразы
    FileRead, clog, % cl
    if (RegExMatch(clog, "Администратор (.*)_(.*) \[(.*)\] для (.*)_(.*) \[(.*)\]\: " Words "", string))
    {
        FileDelete, % cl ;удаляется чатлог, чтобы не флудило
        sleep 4000
        SendChat("/n я тут")
    }
}
P.s: Не забудь подключть SAMP-udf
Лучше добавить рандомную вариацию ответа...
 

CaJlaT

Овощ
Модератор
2,809
2,596
Лучше добавить рандомную вариацию ответа...
тут уже как хочешь... он же не просил рандомить ответ, но если ты хочешь рандомить, то

AutoHotKey:
random, otvet, 1, 5 ;Меняй сколько угодно
if (otvet == 1)
    {
        sleep 5000 ; задержка, чтобы не палился сильно
        SendChat("/n Да, я тут")
    }
if (otvet == 2)
    {
        sleep 5000 ; задержка, чтобы не палился сильно
        SendChat("/n +")
    }
if (otvet == 3)
    {
        sleep 5000 ; задержка, чтобы не палился сильно
        SendChat("/n дадая")
    }
if (otvet == 4)
    {
        sleep 5000 ; задержка, чтобы не палился сильно
        SendChat("/n тут")
    }
if (otvet == 5)
    {
        sleep 5000 ; задержка, чтобы не палился сильно
        SendChat("/n да не бот я")
    }
 

BUTCH!

Известный
20
1
Приветствую.
Имеется такой скрипт. Пытался разобраться, но больше запутался.
Каким образом можно переделать, чтобы из чатлога брался конкретно IP адрес?

Пример
[08-11-2019 || 09:17:58.453] Администратор Nick_Name забанил игрока Nick_Name на 30 дней. Причина: test
[08-11-2019 || 09:17:58.453] {FFC300}* [A] Nick_Name[30] на 30 дней. Причина: test | IP: 123.123.123.123

Как сделать, чтобы при нажатии на alt+f2 (!F2) открывался чат и в нём появлялось "/banip 123.123.123.123"?
Пробовал менять всё, но так и не нашёл нужное, в связи с чем обращаюсь к вам.
Если есть какой-то конкретный гайд по данной теме - прикрепите ссыль, буду благодарен. Ну и за сам код.



ListLines Off
SetBatchLines -1

chatlog := A_MyDocuments "\GTA San Andreas User Files\SAMP\chatlog.txt"
FileDelete, %chatlog%

Words = (kick|mute|jail|unmute|unjail|sban|ban|warn|skick|unban|unwarn|banip|offban|offwarn)

F2::
FileRead, Str, %A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
StringReplace, Str, Str, `r`n, `n, 1
StringReplace, Str, Str, `r, `n, 1

RegExMatch("`n" Str "`n", "i).*\n\[\d+:\d+:\d+]\s*\[A].*?\[.*?]:\s*(/`*" Words "\s.*?)\n", Match)
ToolTip % Clipboard := Match1
SendMessage, 0x50,, 0x4190419,, A
Sleep 150
SendInput,{F6}%match1%
clipboard =
ToolTip
FileDelete,%A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
Return
 
Последнее редактирование:

degrando

Известный
362
127
Приветствую.
Имеется такой скрипт. Пытался разобраться, но больше запутался.
Каким образом можно переделать, чтобы из чатлога брался конкретно IP адрес?

Пример
[08-11-2019 || 09:17:58.453] Администратор Nick_Name забанил игрока Nick_Name на 30 дней. Причина: test
[08-11-2019 || 09:17:58.453] {FFC300}* [A] Nick_Name[30] на 30 дней. Причина: test | IP: 123.123.123.123

Как сделать, чтобы при нажатии на alt+f2 (!F2) открывался чат и в нём появлялось "/banip 123.123.123.123"?
Пробовал менять всё, но так и не нашёл нужное, в связи с чем обращаюсь к вам.
Если есть какой-то конкретный гайд по данной теме - прикрепите ссыль, буду благодарен. Ну и за сам код.



ListLines Off
SetBatchLines -1

chatlog := A_MyDocuments "\GTA San Andreas User Files\SAMP\chatlog.txt"
FileDelete, %chatlog%

Words = (kick|mute|jail|unmute|unjail|sban|ban|warn|skick|unban|unwarn|banip|offban|offwarn)

F2::
FileRead, Str, %A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
StringReplace, Str, Str, `r`n, `n, 1
StringReplace, Str, Str, `r, `n, 1

RegExMatch("`n" Str "`n", "i).*\n\[\d+:\d+:\d+]\s*\[A].*?\[.*?]:\s*(/`*" Words "\s.*?)\n", Match)
ToolTip % Clipboard := Match1
SendMessage, 0x50,, 0x4190419,, A
Sleep 150
SendInput,{F6}%match1%
clipboard =
ToolTip
FileDelete,%A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
Return