-
Postów
4879 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
381
Odpowiedzi opublikowane przez Diegtiariow
-
-
NAZWA: Pokazujemy zdrowie GG w procentach [CoP]
AUTOR: Akella-96©CO TRZEBA ZROBIĆ:
SpoilerNie będziemy potrzebować mnóstwa tekstur do użycia jako custom_static i nie będziemy musieli pisać ogromnych skryptów do obsługi tych statystyk.
Po prostu utworzymy nowy plik w folderze gamedata\scripts i nazwiemy go na przykład percent_health.script. Dodamy do niego następujący kod:
function show_health_percent() local a local h a = db.actor h = a.health* 100 local hud = get_hud() local StatCS=hud:GetCustomStatic("actor_health") if StatCS == nil then hud:AddCustomStatic("actor_health",true) StatCS=hud:GetCustomStatic("actor_health") end local StatText = "" StatText = StatText.. string.format("%1.0f\\n",h) if StatCS ~= nil then StatCS:wnd():TextControl():SetText(StatText) end if db.actor:is_talking() then hud:RemoveCustomStatic("actor_health") elseif db.actor:has_info("inv_is_open") then hud:RemoveCustomStatic("actor_health") end if not db.actor:alive() then hud:RemoveCustomStatic("actor_health") end end
A teraz przeanalizujmy to wszystko:
show_health_percent – nazwa funkcji local a – deklarujemy zmienną «а» local h – deklarujemy zmienną «h» a = db.actor – ustawiamy wartość zmiennej «а» (w tym przypadku «а» równa się «db.actor», tzn. GG h = a.health* 100 - ustawiamy wartość zmiennej «h» (tutaj «h» równa się wartości health*100, czyli stan zdrowia GG pomnożony przez 100 (jeśli nie pomnożymy, to zdrowie będzie wyświetlane w formacie 1, 0.9, itp.) local hud = get_hud() – ustawiamy wartość zmienną hud if StatCS == nil then – (z grubsza «tłumaczenie») jeśli hud StatCS jest pusty (nie ma go), to hud:AddCustomStatic("actor_health",true) – tworzymy custom_static z nazwą «actor_health» StatCS=hud:GetCustomStatic("actor_health") – porównujemy StatCS do stworzonej statystyki end – koniec sprawdzania (nie funkcji) local StatText = "" – deklarujemy zmienną StatText StatText = StatText.. string.format("%1.0f\\n",h) – porównujemy stworzoną zmienną do zadanego formatu wyświetlania wartości wcześniej zadeklarowanej zmiennej «h» Szczegółowiej o formacie wyświetlania: %1.0f – wskazujemy, ile cyfr będzie wyświetlanych po przecinku (nie są nam potrzebne drobne wartości, dlatego stawiamy 1.0) To warunki do wyświetlenia naszej statystyki if db.actor:is_talking() then – jeśli GG rozmawia, to hud:RemoveCustomStatic("actor_health") – usuwamy statystykę elseif Info("inv_is_open") then – jeśli inwentarz GG jest otwarty, to hud:RemoveCustomStatic("actor_health") – usuwamy statystykę end if not db.actor:alive() then – jeśli GG jest martwy, to hud:RemoveCustomStatic("actor_health") – usuwamy statystykę end
Dodatkowo w celu sprawdzenia otwartego inwentarza:
Aby gra sprawdzała otwarcie ekwipunku trzeba do pliku actor_menu.script (weź go z rozpakowanej gry) w funkcji «function inventory_wnd_opened()» przed «end» wstawić ten kod:db.actor:give_info_portion("inv_is_open")
Oraz w funkcji «function inventory_wnd_closed()» (także przed «end») dodać:
db.actor:disable_info_portion("inv_is_open")
Teraz musimy wywołać naszą funkcję.
W tym celu, w pliku gamedata\scripts\bind_stalker.script, w funkcji «function actor_binder:update(delta)», po «object_binder.update(self, delta)» dodajemy:
percent_health.show_health_percent()
Na tym koniec ze skryptami. Przejdźmy teraz do konfigu.
Otwieramy plik gamedata\configs\ui\ui_custom_msgs.xml i na końcu, ale przed «</header>» dodajemy:
<actor_health x="24" y="47" width="36" height="24" complex_mode="1"> <text font="graffiti22" r="255" g="255" b="255" a="255" align="l"/> </actor_health>
Zostały tutaj zapisane współrzędne położenia statystyki na ekranie, czcionka wyświetlanego tekstu i jego kolor. W tym fragmencie kodu ustawione są współrzędne lewego górnego rogu (zmodyfikowany HUD), ty możesz podać własne. I to wszystko.
Takim sposobem, można wyświetlić w procentach dowolną wartość parametrów GG, np. aby wyświetlić energię/wytrzymałość, trzeba h = a.health* 100 zmienić na h = a.power* 100.
Ogólnie, można poeksperymentować z tą funkcją.Oto lista pozostałych operatorów parametrów GG:
1. db.actor.bleeding - stopień krwawienia 2. db.actor.radiation - poziom radiacji
ŹRÓDŁO:
https://ap-pro.ru/forums/topic/1586-cop-pokazyvaem-zdorove-gg-v-procentah/
- 2
- 1
-
@Dezerter06 Aby dostać się do Niestierova, najpierw trzeba dostać się na "stary Jantar".
Przed znalezieniem drogi do "innego Wysypiska":
SpoilerZnaleźć PDA na Jubilejnym (mianowicie na dachu) w zach. cz. Prypeci. Gdy już odczytamy wiadomość z tego PDA to trzeba spojrzeć w kierunku dwóch bloków (tam, gdzie jest duża liana z Zewu Prypeci). Powinien się wtedy pokazać obrazek, gdzie jest przejście do innej lokacji. Tutaj trzeba uważać, bo może zabrać lub wyrzucić wszystkie przedmioty z plecaka to przejście.
Po przejściu na "Mroczny Brzeg. Wysypisko" (Тёмный Край. Свалка):
SpoilerJeśli już się pojawimy na "innym Wysypisku" to szukamy notebooka w domu. Znajdujemy potem pierwszy schron, w którym jest mapa i na tej mapie są 3 punkty. Gdy pójdziemy do punktu pośrodku to będzie tam czekać na nas niespodzianka. Współrzędne z kartki papieru wpisujemy w urządzenie (teleportator chyba) i przeszukujemy drugi schron. Idziemy potem do hangaru i szukamy trzeciego schronu (artefakty to też broń). Powinien być w wyrwie. Wpisujemy współrzędne z notatki i przechodzimy na inną lokację.
Po przejściu na "Mózgołamacza" (Мозголом)/"stary Jantar" idziemy wyłączać psi-instalację. Najlepiej zrobić to tak jak w filmie od 17:31 - 20:56. Wtedy znajdziemy Niestierova obok wielkiego mózgu.
- 1
- 1
- 1
-
@Mayer99 Można kupić u Zęba lub wykonać zadanie w X-16 (przynieść dokumenty z X-16).
-
@Mayer99 Śruba na Magazynach Wojskowych może naprawić zepsuty miotacz ognia.
-
-
-
-
@Mayer99 Znalazłem filmik z charakterystykami pancerzy: https://youtu.be/a0I80HOUrKM
SpoilerPancerz Powinności bez maski:
Pancerz Powinności z maską:
Kombinezon Monolitu bez maski (o 5 kg więcej można przenosić niż w komb. Powinności):
Komb. Monolitu z maską (i też 5kg więcej do przenoszenia niż w komb. Powinności):
Ponoć naukowy komb. Monolitu jest bardzo dobry, a z egzo to egza Monolitu. Z tego co wyczytałem na ap-pro, to w zadaniu Kucharza trzeba jakiemuś Psycholowi zanieść jedzenie, poskipować dialogi, pójść do monolitowca i pogadać z nim, następnie do Psychola i zdobędziemy wtedy klucz. Klucz przyda się do otwarcia zielonej szafy w Czerwonym Lesie w kopalni.
Ewentualnie Sevę można otrzymać za wykonanie zadań u tego gościa: https://nlc.fandom.com/ru/wiki/Пахом
- 3
-
-
@Mayer99 Ewentualnie:
CytatDzik może pomóc usunąć blokadę w X-18. Potrzebuje on dużą ilość jedzenia i wódki. Jedzenie można kupić hurtowo u Sidorowicza, a wódkę samemu można zdobyć. Jeśli wcześniej gracz pokojowo rozwiązał problem ze Żwawym i znalazł jego PDA, to Dzik będzie potrzebował 4 razy mniej produktów (w tym przypadku Sidorowicz nie będzie miał sprzedaży hurtowej).
Jeśli zabije się grupę Raszpila/Tarnika (Рашпиля), to Dzik nie obrazi się, ale nie pomoże w usunięciu blokady. Z drugiej strony, aby Kruk, Kulinar lub Barman pomogli GG w usunięciu blokady, tak czy inaczej powinien usunąć grupę Raszpila/Tarnika.
Czyli są 4 opcje na usunięcie blokady:
Dzik - dużo jedzenia i wódki
Kruk - likwidacja grupa Raszpila + jakieś artefakty za usunięcie blokady.
Kulinar - likwidacja grupa Raszpila + jakieś naboje i zapłatę czekiem
Barman - likwidacja grupa Raszpila + przyzwoita suma w czekach
-
@Mayer99 Zgaduję, że nie masz określonej ilości rubli. Na takiej stronie znalazłem w jednym poście informację o tym, że
Cytat[...]. A propos, jeśli wymienisz pieniądze na czeki u Barmana, to jest drożej (czek za 100 tys. - 115 tys., a u Sidora za 50 tys. - 55 tys.).
-
-
NAZWA: SKS, SKS "Custom" [SoC]
TWÓRCA: ?OPIS:
SpoilerSKS, SKS "Custom" i naboje 7.62x39 (2 rodzaje), 2 celowniki (PU, POSP 3-9Х42В) i tlumik wzięto z moda OP-2. Broń i amunicję wydaje Wilk. Spawner jest.
WIDEO:
SpoilerLINKI:
ŹRÓDŁO:
- 3
-
NAZWA: Toz-34 obrzyn [SoC]
TWÓRCA: ?OPIS:
SpoilerToz-34 obrzyn i 2 dodatkowe rodzaje nabojów (gruby śrut i kula izomorf) wzięto z moda OP-2. Broń i amunicję wydaje Wilk. Spawner jest.
WIDEO:
SpoilerLINKI:
ŹRÓDŁO:
- 3
-
NAZWA: IMI UZI, MAC10, MAC40 [SoC]
TWÓRCA: ?OPIS:
SpoilerIMI UZI, MAC10, MAC40 i naboje 9x19 7H21, .40S&W, kalibru 45, przedłużona lufa, tłumiki wzięto z moda OP-2. Broń i amunicję wydaje Wilk. Spawner jest.
Nie używać kolimatora C-MORE Railway!
WIDEO:
SpoilerLINKI:
ŹRÓDŁO:
- 2
-
NAZWA: OC-14-2 «Groza-1» [SoC]
TWÓRCA: ?OPIS:
SpoilerOC-14-2 «Groza-1» i naboje 7.62x39 wzięto z moda OP-2. Broń i amunicję wydaje Wilk. Spawner jest.
WIDEO:
SpoilerLINKI:
ŹRÓDŁO:
-
- 2
-
-
-
@Agrael Spróbuj może się przespać. Zwykle w modach, gdzie jest dodana potrzeba snu, ekran jest rozmazuje się po pewnym czasie.
- 1
-
Oto co jest w bunkrze u Sidorowicza:
SpoilerPrototyp detektora "Da-Da":
Wojskowy z karabinem maszynowym nie jest już straszny:
- 1
- 1
-
-
Patch 1.05 z 19 lipca:
- Dodano angielską lokalizację (podziękowania dla Jeferson Pedrozo i NLCope)
- Dodano automatyczne tworzenie kopii zapasowych i przywracanie w przypadku uszkodzenia zapisów gry
- Ulepszenie synchronizacji klientów
- Różne małe fix'y, poprawki błędów
Instalacja: Nacisnąć na przycisk «Проверить обновления» w launcherze.Stream moda z angielską lokalizacją:
- 2
-
Diegtiarow przychodzi na Janów:
- 2
Płatny BTR z możliwością kupna
w Skrypty, konfigi, logika, silnik
Opublikowano
NAZWA: Płatny BTR z możliwością kupna
AUTOR: dimak-stalker
KROK 1:
Spawnujemy BTR:
1. Tworzymy skrypt my_car.script (w folderze gamedata/scripts/) i piszemy tam następującą treść:
function btr_1 () alife():create("vehicle_btr",vector():set(-198.585,-20.227,-147.066),53596,57) end
1 krok został zakończony!
KROK 2:
1. Teraz musimy się upewnić, że uruchomimy silnik i będziemy mogli podziwiać nasz transporter opancerzony z widoku trzeciej osoby.
W tym celu otwieramy plik ui_keybinding (znajdujący się w gamedata\config\ui) i wpisujemy do takiej sekcji:
to:
2. Teraz w grze, wchodząc w ustawienia sterowania, znajdziesz przyciski i przypiszesz klawisze do wykonywania poleceń.
2 krok został zakończony!
KROK 3:
1. Tworzymy skrypt o nazwie money.script i piszemy w nim:
function has_money_2000() local money = math.floor(2000) xr_statistic_freeplay.get_freeplay_statistic():get_found_pda_discount()) return db.actor:money()>=money end function dat_dengi(first_speaker, second_speaker) dialogs.relocate_money(second_speaker, 2000, "out") end
2. Teraz pozostaje utworzyć dialog i wstawić funkcję. W tym celu tworzymy prosty dialog.
Otwieramy np. plik dialogs_escape.xml (gamedata/config/gameplay) i piszemy na końcu:
To jest szkielet dialogu. Nasza funkcja zostanie w nim zapisana.
3. Teraz musisz napisać teksty dialogów.
Wchodzimy do pliku "stable_dialogs_escape.xml" (gamedata/config/text/pol) i piszemy na końcu:
Uwaga: Wszystkie dialogi zaczynają się od słów Naznaczonego.
4. Teraz musisz dopisać ten dialog do NPC. Na przykład Sidorowiczowi.
Otwórz plik "character_desc_bar.xml" i znajdź sekcję Sidorowicza. Jest ona pierwsza i po wszystkich:
dopisujemy swój dialog:
3 krok został zakończony!
JAK TO TERAZ WYGLĄDA?:
Sidor będzie miał nowy dialog typu:
(Naznaczony): - Chcę kupić BTR.
(Sidorowicz): - Naprawdę? Jesteś pewien, że wystarczy ci pieniędzy? Za transport powinieneś zapłacić mi 2000 rubli. Masz tyle kasy?
Naznaczony - 1 wariant pojawi się, jeśli Naznaczony ma 2000 rubli:
- Tak, mam. Trzymaj.
Nasz BTR pojawi się, a Sidorowicz zabierze od nas 2000 rubli.
Naznaczony - 2 wariant pojawi się, jeśli Naznaczony nie ma 2000 rubli:
- Sorry, nie mam.
BTR nie pojawi się.
PS.:
1. Sam BTR znajduje się w folderze gamedata\config\creatures\vehicles.ltx:
[vehicle_btr] GroupControlSection = spawn_group $spawn = "vehicles\vehicle_btr" class = SCRPTCAR cform = skeleton visual = physics\vehicles\btr\veh_btr_u_01.ogf actor_visual = physics\vehicles\btr\veh_btr_u_01.ogf ef_equipment_type = 3 ph_mass = 100000 script_binding = bind_physic_object.init
2. Ci, którzy mają АМК mod 1.4.1, to w pliku ui_keybinding trzeba zrobić tylko:
a ten kawałek nie jest wymagany:
ŹRÓDŁO:
https://ap-pro.ru/forums/topic/1282-platnyy-btr-s-vozmozhnostyu-pokupki/