Skocz do zawartości

LiveAndLetDie

Użytkownik
  • Liczba zawartości

    4
  • Rejestracja

  • Ostatnia wizyta

Reputacja

1 Nowy
  1. (Po pierwsze przepraszam, jeśli występują problemy z tłumaczeniem, mam nadzieję, że jest to jakoś zrozumiałe!) Hej wszystkim, próbuję stworzyć wtyczkę, która ustawia graczowi losowy model (SetEntityModel) podczas odradzania. Te modele i wszystkie niezbędne pliki są odbierane z plików zewnętrznych w celu zwiększenia elastyczności wtyczki, zamiast ich kodowania na stałe. Do tej pory udało mi się stworzyć 2 funkcje. Pierwsza funkcja odczytuje wszystkie wiersze z pliku. Wszystkie pliki modeli i takie są przechowywane w tym pliku wiersz po wierszu. Po ich odczytaniu funkcje dodają wszystko do tabeli pobrań (AddFileToDownloadsTable). Druga funkcja odczytuje nazwę modelu z pliku wartości kluczy i odpowiednio wstępnie buforuje model (PrecacheModel). Mam nadzieję, że do tej pory wszystko jest poprawne, ale mój problem / pytanie brzmi: jak mogę przypisać losowy model każdemu graczowi podczas odradzania się? Oto kod i pliki zewnętrzne: #include <sourcemod> #include <sdktools> public void OnPluginStart() { HookEvent("player_spawn", Event_PlayerSpawn, EventHookMode_Post); } public Action Event_PlayerSpawn(Event event, const char[] name, bool dontBroadcast) { // ?????????????????????????????? } public void OnMapStart() { ReadDLFile(); ReadKVFile(); } public void ReadDLFile() { char path[128]; BuildPath(Path_SM, path, sizeof(path), "configs/dls.cfg"); Handle file = OpenFile(path, "r"); char line[256]; while(!IsEndOfFile(file) && ReadFileLine(file, line, sizeof(line))) { TrimString(line); AddFileToDownloadsTable(line); } CloseHandle(file); } public void ReadKVFile() { char path[128]; BuildPath(Path_SM, path, sizeof(path), "configs/dls2.cfg"); KeyValues Kv = new KeyValues("Models"); Kv.ImportFromFile(path); if(!Kv.GotoFirstSubKey()) { delete Kv; return; } char model[256]; do { Kv.GetString("model", model, sizeof(model)); PrecacheModel(model); } while(Kv.GotoNextKey()); delete Kv; } dls.cfg // AddFileToDownloadsTable ścieżka 1 .vtf ścieżka 2 .vmt ścieżka 3 .mdl ścieżka 4 // i tak dalej.. ścieżka 5 // i tak dalej.. dls2.cfg // PrecacheModel "Models" { "1" { "model" "xxxx.mdl" } "2" { "model" "yyyy.mdl" } }
  2. Bardzo pomocny samouczek, który ułatwił zrozumienie KeyValues. Podoba mi się, jak to wyjaśniało również korzystanie z menu w tym samym czasie.
×
×
  • Dodaj nową pozycję...