[ROZWIĄZANE] Int i string w set_task, oper...
DarkLink
23.04.2015
Witam, mam pewien problem, otóż edytowałem roundsound'a i dodałem do niego tutor, ale tutor zasłania ostatniego "killa" (te w prawym górnym rogu), więc chciałem dodać opóźnienie do wyświetlania tutora, ale nie wiem jak przesłać set_task'iem i integer'a i string'a. Dokładniejszym problemem dla mnie jest właśnie jak w jednego array'a zapisać i int i string i jak potem te zmienne wczytać do nowych zmiennych (int) iPlayer i (string) szText[256] z tegoż właśnie array'a po przesłaniu go set_taski'em. Próbowałem tak jak poniżej, ale iPlayer jest pusty, chociaż może tak pewnie być, a szText zawiera jeden znak. Więc prosiłbym o pomoc, a może ktoś ma inny, łatwiejszy pomysł na wykonanie tego? Chyba, że można set_task'iem przesłać tablicę wielowymiarową?
public showInfo(szFile[]){ for(new iPlayer = 1 ; iPlayer <= maxPlayers ; iPlayer++ ){ if(!is_user_connected( iPlayer ) || !playSoundOn[ iPlayer ]){ continue; } new data[257]; data[0] = iPlayer; data[1] = szFile[0]; set_task(5.0, "showTutor", .parameter=data, .len=257, .flags="a", .repeat=1); } public showTutor(data[]){ new iPlayer, szText; iPlayer = data[0]; szText = data[1]; tutorMake(iPlayer,TUTOR_GREEN,4.0,"%s", szText); }
Z góry dziękuję za pomoc
Puchate
23.04.2015
Jest to bardzo proste i przyjemne, a zarazem bardzo przydatne. Musisz utworzyć pseudostruktury aby wygodnie operować na danych różnego typu zapisanych w jednej tablicy. Poniżej przykład użycia, więcej w tutorialu.
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #define PLUGIN "New Plug-In" #define VERSION "0.1" #define AUTHOR "Sn!ff3r" enum _:TwojaStruktura { zmiennaInteger = 0, zmiennaString[32], Float:zmiennaFloat } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) new dane[TwojaStruktura] // int dane[zmiennaInteger] = 5 // string formatex(dane[zmiennaString], 31, "String ABC") // float dane[zmiennaFloat] = _:4.68 set_task(10.0, "plugin_init2", 555, dane, TwojaStruktura) } public plugin_init2(dane[TwojaStruktura]) { console_print(0, "dane[zmiennaInteger]: %d", dane[zmiennaInteger]) console_print(0, "dane[zmiennaString]: %s", dane[zmiennaString]) console_print(0, "dane[zmiennaFloat]: %0.2f", dane[zmiennaFloat]) }
DarkLink
23.04.2015
Dzięki, działa Nawet nie wiedziałem, że coś takiego jak pseudostruktury można zrobić, ale to dlatego, że od niedawna piszę w pawn'ie i przez to się jeszcze uczę Również dzięki za lekturkę, na pewno przeczytam Do zamknięcia.
sebul
23.04.2015
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL