Skocz do zawartości

Rekomendowane odpowiedzi

Niestety też nic nie działa. Nadal ten sam warn. Wcześniej bawiłem się z sscnf2, ale wszystko usunąłem, bo nic mi nie wyszło. Po tym pojawiały się te błędy.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

@UP ten kod ci może serwera skraszować ...

ty pomyśl co robisz, chcesz inputtext czyli tablicę przypisać do zmiennej ?

new text[128];
text = inputtext;
lub
new text[128];
strcat(text, inputtext);

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

== porównuje liczbę, każdy tekst składa się z wielu liczb (każda liczba to inny znak)

jeśli chcesz zmienić tekst w liczbę użyj strval

if(strval(inputtext) == kasyno12)
jeśli porównać tekst z innym to strcmp
if(!strcmp(inputtext, kasyno12, true) && inputtext[0])

zauważ ! przed strcmp, dlatego że zwraca ono 0 gdy stringi są takie same lub gdy są puste, inputtext[0] czyli jeśli pierwszym znakiem jest cokolwiek po za pustym miejscem to ok (podano jakiś tekst)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

A jak bym chciał porównać to inputtext ze zmienną(czyli przykładowo zmienna "abc" to jakiś ciąg znaków) to tak:

if(strcmp(inputtext, abc, true))
? Wyrzuca:
error 035: argument type mismatch (argument 2)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

@Parykstodwa dwa przykłady które poprzednio podałem pierwszy dotyczy gdy 'kasyno12' jest zmienną, a drugi gdy jest tablicą

@dawid4157 w tekście dajesz {KOLOR} tylko kolor to tylko 6 znaków, zaznaczę ci na czerwono na przykładzie koloru białego:

0xFFFFFFFF

czyli np.

"Rgulamin {FFFFFF}coś tam"

da efekt że napis Regulamin będzie w kolorze GUI (taki jasny niebieski) a coś tam będzie czystą bielą

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

SetPVarInt(playerid, "test", inputtext);

ShowPlayerDialog(playerid, D_99, DIALOG_STYLE_INPUT, "Treść", "Text", "Next", "");

i w kolejnym dialogu uzyje

GetPVarInt(playerid, "test") z %d

Dobrze kombinuje?  :P

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

jakie Int ? czy do ciebie tak trudno dociera różnica czym jest tekst a czym liczba ?

SetPVarString(playerid, "test", inputtext);
new str[128];
GetPVarString(playerid, str, 128);
//print(str);

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

no to zrozum że cokolwiek nie wpiszesz w okno inputtext zawsze będzie tablicą zawierającą tekst i jeśli chcesz tą liczbę w formie tekstu zamienić na rzeczywistą liczbę musisz użyć strval

SetPVarInt(playerid, "test", strval(inputtext));

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

if(gpphonenumber == GetPVarInt(playerid, "test") && GetPVarInt(playerid, "test") != 0)

tam w ogóle nie powinno być funkcji strcmp, nie wiem co ty miałeś na myśli dając tam tą funkcje ...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Fajny  :P

PS.:

jak ktoś nie chce miec 2 przycisków należy zrobić tak:

ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "caption[] - tutaj znajduje się nagłówek", "info[] - tutaj znajduje się jakiś tekst\nPrzenosimy go do nastepnej linii za pomoca \\n",[b] "button1", "button2");[/b]

>"button2" na ""

Tylko tam tak mówie  :P

A tak to bomba poradnik wszędzie śie takiego szuka ;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Fajny  :P

PS.:

jak ktoś nie chce miec 2 przycisków należy zrobić tak:

ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "caption[] - tutaj znajduje się nagłówek", "info[] - tutaj znajduje się jakiś tekst\nPrzenosimy go do nastepnej linii za pomoca \\n", "button1", "button2");

>"button2" na ""

Tylko tam mówie  :P

A tak to bomba poradnik wszędzie śie takiego szuka ;)

Nie widzieliśmy,  szkoda, że poradnika nie zrobiłeś.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Witam. Mam problem, otóż zrobiłem dialog, którego kod przedstawię poniżej.

	if(listitem == 0)
	{
	ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT, "Czas rundy", "Wpisz tutaj czas rundy (5-15 min)", "OK!", "Cofnij");
	if(IsNumeric(inputtext)){
  	GetPlayerName(playerid, sendername, sizeof(sendername));
	format(string, sizeof(string), ""ADM2" {AFAFAF}ustawił {FFFFFF}czas rundy {AFAFAF}na {FFFFFF}%d {AFAFAF}minut",sendername,strval(inputtext));
	SendClientMessageToAll(COLOR_ORANGE, string);
	dini_IntSet("RAD/config.ini","time",strval(inputtext));
	modetime = strval(inputtext);
	}
	}

Teraz bym chciał wiedzieć, dlaczego gdy wpisuję np. 7 nie wyświetla się ani wiadomość, ani nie zapisuje konfiguracji w pliku .ini. Prosiłbym o pomoc

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Tak nie można zrobić. Ten cały kod wykona Ci się od razu, gdy nacisniesz pierwszy przycisk z listy (w tym wypadku akurat ci się nie wykona, bo funkcja IsNumeric zwróci 0). Otwierasz nowe GUI z nowym ID, i potem robisz oddzielnie if(dialogid) i tam właśnie masz inputtext to co wpiszesz.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×