Gość Diegtiariow Opublikowano 7 Października 2023 Zgłoś Udostępnij Opublikowano 7 Października 2023 NAZWA: Wyświetlenie zegara na HUD-ie za pomocą innej opcji [SoC] AUTOR GŁÓWNEJ LEKCJI: steelrat AUTOR POPRAWEK: LaRento PODZIĘKOWANIE ZA LEKCJĘ O KLASIE CTIME: malandrius POTRZEBNE PLIKI: Spoiler nowy_skrypt.script bind_stalker.script ui_custom_msgs.xml OPIS DZIAŁAŃ: Spoiler 1. Stworzenie funkcji wyświetlania znanego już zegara: Otwieramy nowy_skrypt.script, który nazwiecie jak zechcecie i piszemy tutaj następujący kod. Funkcja zawiera objaśnienia. function add_clock() local hud = get_hud() -- ustawiamy lokalną zmienną HUD'a local show_time = hud:GetCustomStatic("hud_show_time") -- ustawiamy lokalną zmienną dla wyświetlenia czasu local show_date = hud:GetCustomStatic("hud_show_date") -- ustawiamy lokalną zmienną dla wyświetlenia daty if show_time == nil then hud:AddCustomStatic("hud_clock_static", true) -- dodajemy pozycję zegara na HUD'zie hud:AddCustomStatic("hud_show_time", true) -- dodajemy wyświetlanie czasu na HUD'zie hud:AddCustomStatic("hud_show_date", true) -- dodajemy wyświetlanie daty na HUD'zie show_time = hud:GetCustomStatic("hud_show_time") -- otrzymujemy wyświetlenie czasu na HUD'zie show_date = hud:GetCustomStatic("hud_show_date") -- otrzymujemy wyświetlenie daty na HUD'zie end local global_time = game.CTime.TimeToMinutes -- ustawiamy lokalną zmienną do klasy CTime, aby dodać czas w postaci godzina/minuta local global_date = game.CTime.DateToDay -- przypisujemy lokalną zmienną do klasy CTime, aby dodać datę w postaci dzień/miesiąc/rok local msg_time = game.get_game_time():timeToString(global_time) -- lokalna zmienna dla wyświetlenia czasu przez funkcję timeToString w naszej formie local msg_date = game.get_game_time():dateToString(global_date) -- lokalna zmienna dla wyświetlenia daty przez funkcję dateToString w naszej formie if show_time ~= nil then show_time:wnd():SetText(msg_time) -- wyświetlamy czas poprzez lokalną zmienną msg_time end if show_date ~= nil then show_date:wnd():SetText(msg_date) -- wyświetlamy czas poprzez lokalną zmienną msg_date end end Jeśli chcesz, aby twój zegar wyświetlał sekundy, zmień linię: local global_time = game.CTime.TimeToMinutes na local global_time = game.CTime.TimeToSeconds Zakończyliśmy pracę ze skryptem. 2. Rejestracja lub stałe wywołanie funkcji: Otwieramy bind_stalker.script i przechodzimy do funkcji actor_binder:update(delta), i powiedzmy po linii: game_stats.update (delta, self.object) piszemy: nowy_skrypt.add_clock() 3. Dodanie samego zegarka do HUD'a: Otwieramy plik ui_custom_msgs.xml i piszemy następujący kod na końcu pomiędzy tagami <header>: <hud_clock_static x="852" y="17" width="156" height="52"> <text complex_mode="0" x="65" y="0" font="letterica16" r="255" g="255" b="255" a="130" align="c"/> <texture>ui_hud_frame_clock</texture> </hud_clock_static> <hud_show_time x="870" y="45" width="156" height="52"> <text x="0" y="0" font="graffiti19" r="255" g="255" b="255" a="140" align="c"/> </hud_show_time> <hud_show_date x="875" y="17" width="156" height="52"> <text x="0" y="0" font="letterica16" r="255" g="255" b="255" a="130" align="c"/> </hud_show_date> Możesz też umieścić standardową czcionkę czasu, na przykład jak w timerze. Aby to zrobić, użyj tego z zamianą: <hud_show_time x="875" y="40" width="156" height="52"> <text x="0" y="0" font="graffiti32" r="238" g="155" b="23" align="c"/> </hud_show_time> I to wszystko. ŹRÓDŁO: https://ap-pro.ru/forums/topic/1194-soc-vyvod-drugogo-varianta-chasov-na-hud/ Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
scigacz1975 Opublikowano 14 Września Zgłoś Udostępnij Opublikowano 14 Września zegar jest, spawner nie działa (chyba nie jest do soc bo w soc nie ma katalogu configs) ale dzięki za pomoc na dole gotowiec z zegarem jak komuś potrzeba zegar.7z 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.