Gość Diegtiariow Opublikowano 9 Czerwca 2023 Zgłoś Udostępnij Opublikowano 9 Czerwca 2023 NAZWA: Zmiana wytrzymałości rzeczy w dowolnym momencie gry [CoP] AUTOR: FalkineIsaku WYJAŚNIENIE: Spoiler Ten tutorial będzie dotyczyć tego, jak zmienić trwałość/wytrzymałość rzeczy GG w dowolnym momencie gry. (w temacie będzie na początku gry) PRACA W XR_EFFECTS: Spoiler Są dwa sposoby: Zmiana oryginalnej funkcji lub usunięcie starej i zrobienie nowej. (Można zostawić starą i zrobić nową) Szukamy w naszym pliku: "function damage_actor_items_on_start", tutaj chyba zrozumiale, ale na wszelki wypadek objaśnienia: function damage_actor_items_on_start(actor, npc) "damage_actor_items_on_start" - można zmienić. local actor = db.actor - Nie ruszać local obj = actor:object("helm_respirator") "helm_respirator" - to sekcja przedmiotu, któremu chcemy zwiększyć wytrzymałość. if obj ~= nil then - Nie ruszać obj:set_condition(0.8) "0.8" - To nowy stan przedmiotu, który możemy ustawić. end - Nie ruszać end - Nie ruszać Zgodnie z tym schematem możliwe jest utworzenie nowej funkcji. AKTYWACJA: Spoiler Na początek wyjaśnijmy jak usunąć standardową aktywację funkcji (na początku oryginalnego ZP na Zatonie) Wchodzimy do "configs\scripts\zaton\zaton_a1_logic.ltx" i usuwamy %=damage_actor_items_on_start% (jest w 5 linijce) Jak wywołać taką funkcję znowu, ale z inną nazwą i w innej logice. Otwieramy waszą logikę restryktora i na samym początku, po pierwszym "on_info/on_game_timer" piszemy: %=nazwa_waszej_funkcji% Przykład: on_info = {+esc_start_game !surge_started} %=nazwa_waszej_funkcji% I to wszystko TROCHĘ SŁÓW OD DENIS2000: Spoiler Jest zmieniany stan obiektu (odwrotność zużycia przedmiotu). Wytrzymałość (a dokładniej stopień, z jakim psuje się przedmiot pod wpływem czynników zewnętrznych) jest ustawiany w konfigu obiektu w sekcji z nazwą wskazaną w parametrze immunities_sect. Autorska funkcja Denis2000: function damage_actor_items_on_start() local actor = db.actor local slot_tab = {2,3,7,12} for i = 1, #slot_tab do local item_in_slot = actor:item_in_slot(slot_tab[i]) if item_in_slot ~= nil then item_in_slot:set_condition((math.random(30)+40)/100) end end end Zmienia ona stan przedmiotów w slotach 2,3,7,12 u GG, to znaczy broni, hełmu i pancerza. Zmienia na losową wartość w przedziale 0,4-0,7, przy tym nie ma znaczenia jaki dokładnie przedmiot jest wydany na starcie gry. ŹRÓDŁO: https://ap-pro.ru/forums/topic/3993-cop-izmenenie-prochnosti-veshtey-v-lyuboy-moment-igry/ Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.
Uwaga: Twój wpis zanim będzie widoczny, będzie wymagał zatwierdzenia moderatora.