nikikin 18.02.12, 18:39
Cпам.
Cегодня 19. 03
| Форум Записи участника |
| Результаты поиска |
|
|
|
|
Сталкер_27#423 | Тема: 40 мл. смертиQuote (Reronage) но потом все равно придется еще анимок делать Безусловно |
Сталкер_27#424 | Тема: Простейшие скриптыЗдравствуйте, с вами снова я, Сталкер_27 и сегодня мы разберём простейшие скрипты.
======================================================================= ВЫДАЁМ ПРЕДМЕТ АКТОРУ ======================================================================= function название функции (first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "название предмета", "in") end Размещается в файлах скрипт. Выдача поршня вставляется под строку действия. название скрипта.название функции Примечание, что бы выдать два одинаковых предмета пишем function название функции (first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "название предмета", "in",2) end Если надо больше меняем цифру 2 на нужную нам. ========================================================================= ОТБИРАЕМ ПРЕДМЕТ У АКТОРА. ========================================================================= function название функции(first_speaker, second_speaker) dialogs.relocate_item_section_from_actor(first_speaker, second_speaker, "название предмета") end размещается в файлах скрипт выдача поршня вставляется под строку действия название скрипта.название функции Примечание, что бы отобрать два одинаковых предмета пишем function название функции(first_speaker, second_speaker) dialogs.relocate_item_section_from_actor(first_speaker, second_speaker, "название предмета",2) end Если надо больше меняем цифру 2 на нужную нам. ======================================================================= СПАВНИМ ВЕЩЬ В РЮКЗАК гг ======================================================================= function название функции() local obj = alife():create("ВЕЩЬ", db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id()) end В диалог название скрипта.название функции =========================================================================== ПРОВЕРКА НАЛИЧИЯ У АКТОРА ПРЕДМЕТА =========================================================================== Вариант первый function Название функции() if db.actor:object("название предмета") then return true end return false end в диалог имя скрипта.название функции <---------как вариант(пользуются ПЫС)------------------> function название функции(first_speaker, second_speaker) return first_speaker:object("название предмета") ~= nil end в диалог имя скрипта.название функции =========================================================================== ПРОВЕРКА ВЕЩЕЙ У ГГ =========================================================================== function Название функции(first_speaker, second_speaker) return first_speaker:object("название предмета") ~= nil or first_speaker:object("название предмета") ~= nil or first_speaker:object("название предмета") ~= nil end в диалог имя скрипта.название функции описание... если есть хотя бы одна вещь, то мы получим фразу, если нет всех нет разговора ============================================================================ ПРОВЕРКА ДЕНЕГ У ГГ ============================================================================ Вариант первый(используют ПЫС) function название функции(first_speaker, second_speaker) return first_speaker:money() >= 2000 end в диалог имя скрипта.название функции <-----------Вариант два--------------> Использовал на ТЧ, но и в ЗП работает function название функции() return db.actor:money()>=10000 end в диалог имя скрипта.название функции ========================================================================= СПАВН ПРЕДМЕТА ========================================================================= function spawn_vintar() alife():create("Название предмета",vector():set(24.725412368774,-3.6072344779968,173.83030700684),993926,210) end В диалог название скрипта.название функции ========================================================================== МГНОВЕННАЯ СМЕРТЬ ГГ ========================================================================== function название функции(npc, actor) npc:kill(actor) end В диалог название скрипта.название функции =========================================================================== ПРОВЕРКА КОЛ_ВА ОДИНАКОВЫХ ПРЕДМЕТОВ =========================================================================== function название функции(first_speaker, second_speaker) local item_sections = {"Предмет"} local needed = количество одинаковых предметов, ставится цифра без знаков local count = 0 local item_section local function calc(temp, item) if item:section() == item_section then count = count + 1 end end for k,v in pairs(item_sections) do item_section = v get_story_object("actor"):iterate_inventory(calc, actor) end return count >= needed end в диалог имя скрипта.название функции ========================================================================== ЛЕЧЕНИЕ ГГ ========================================================================== Вставим этот актион в диалог dialogs.medic_magic_potion ========================================================================== ВЫДАЧА ДЕНЕГ от НПС ГГ ========================================================================== function название функции(first_speaker, second_speaker) dialogs.relocate_money_to_actor(first_speaker, second_speaker, 2000) end В диалог название скрипта.название функции ========================================================================== ===================================================== ===================== ПРОВЕРКА НА ХОРОШЕЕ ЗДОРОВЬЕ ========================================================================== function actor_good(first_speaker, second_speaker) if db.actor.health > 0.75 or --уровень здоровья, при котором диалог уже будет появляться(от 0 до 1) db.actor.radiation < 0.1 or -- уровень радиации,при котором диалог уже будет появляться(от 0 до 1) db.actor.bleeding < 0.1 then --уровень кровотечения, при котором диалог уже будет появляться(от 0 до 1) return true end return false end ========================================================================== ПРОВЕРКА НА ОТНОШЕНИЯ ГРУППИРОВКИ К ГГ ========================================================================== function if_enemy_to_actor(first_speaker, second_speaker) local npc = dialogs.who_is_npc(first_speaker, second_speaker) local actor = dialogs.who_is_actor(first_speaker, second_speaker) return xr_conditions.is_faction_enemy_to_actor(actor, npc, {"Название группировки"}) end если надо когда группировка не враждебна к актору, то return not если надо когда группировка друзья,то return xr_conditions.is_faction_friend_to_actor(actor, npc, {"Название группировки"}) когда нейтралы, return xr_conditions.is_faction_neutral_to_actor(actor, npc, {"Название группировки"}) ;------------------------------------------------------------------------------------------------------ ;ПРОВЕРКА НА УБИЙСТВО ;------------------------------------------------------------------------------------------------------ local npc = ТУТ НУЖНО ЗАДАТЬ НЕПИСЯ if db.actor:has_info(НАЗВАНИЕ ИНФОПОРШНЯ ВЫДАННОГО ЗАДАНИЯ) if npc:alive() then db.actor:give_info_portion(НАЗВАНИЕ ИНФОПОРШНЯ С УКАЗАНИЕМ ПОДОЙТИ К НЕПИСЮ) db.actor:disable_info_portion(НАЗВАНИЕ ИНФОПОРШНЯ ВЫДАННОГО ЗАДАНИЯ) end end ;------------------------------------------------------------------------------------------------------ ;ЛЕВЕЛ_ЧЕНДЖЕРЫ ;------------------------------------------------------------------------------------------------------ function add_new_lc(levch,levchn,levchm,info) local objt = alife():story_object(levch) if not objt then alife():create(levchn) end local obj = alife():story_object(levch) if obj then level.map_add_object_spot(obj.id, "level_changer",levchm) db.actor:give_info_portion(info) info_received() end end |
Сталкер_27#425 | Тема: MOD опрос №10MOD опрос №10
Вопрос: что делать с группировками? Пояснения: Назрел вопрос в какое русло изменять группировки, потому что пока не известы действующие группировки в изменении сюжетной лмнии я связан по рукам и ногам. Сообщение отредактировал Сталкер_27 - Вт, 03.04.12, 12:44
|
Сталкер_27#426 | Тема: MOD опрос №9MOD опрос №9
Вопрос: Чувство голода Пояснения: Стоит ли сделать чувство голода. Чтобы мутило когда долго не поешь, и садилось здоровье? Сообщение отредактировал Сталкер_27 - Вт, 20.03.12, 15:28
|
|
|
Сталкер_27#428 | Тема: MOD опрос №10Почему это вполне возможно, пиши название группировки, враго, друзей и идеологию.
|
Сталкер_27#429 | Тема: Фотографии наших форумчанСообщение отредактировал Сталкер_27 - Пт, 23.03.12, 15:18
|
|
|
|
|
Сталкер_27#432 | Тема: Критерии переводаМеня уже очень давно мучает вопрос, по каким критериям переводят из новичка до пользователя? где необходимые действия посты, файлы и тд.
Добавлено (24.03.12, 23:29) |
Сталкер_27#433 | Тема: Критерии переводаХЗ чтобы убедится что человек помогает участникам форума.)
|
Сталкер_27#434 | Тема: КоординатыАхил, ты абсолютно прав. Есть пару программ но они тольклько делают более удобное редактирование кода.( для нубов короче) а норм проггеры умеют через блокнот.)
|
Сталкер_27#435 | Тема: Информация о BoloПрошу обратить внимание. репутация боло на маленьком варкрафт сайте.)))
Сообщение отредактировал Сталкер_27 - Пн, 26.03.12, 18:41
|
| ||