Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.

  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Wpisanie do zmiennej wartości podanej przez gracza


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
8 odpowiedzi w tym temacie

#1 K!113r

    Czempion

  • Power User

Reputacja: 385
Wszechpomocny

  • Postów:865
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Piotrków Tryb.
Offline

Napisano 15.03.2012 20:17

Więc przejdźmy do meritum sprawy:
widziałem w amxbans że można samemu wpisywać dane, oczywiście wyskakuje nam linijka tekstu no i musimy coś wpisać (albo nie musimy :P) i chciałem się dowiedzieć jak otrzymać taki efekt i czy można tym nadać wartość zmiennej. Nie jest mi ta odpowiedź potrzebna na już, ale przyda mi się w przyszłości.
  • +
  • -
  • 0

DarkGL to mój autorytet.

skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować


#2 ^Grzyboo

    Wszechobecny

  • Użytkownik

Reputacja: 239
Wszechwidzący

  • Postów:461
  • Imię:Grzyboo
  • Lokalizacja:Tak
Offline

Napisano 15.03.2012 21:51

Przeanalizuj sobie:



#include <amxmodx>
#include <amxmisc>

new gZmiennaGracza[33];

public plugin_init()
{
register_plugin("NewPlugin", "v1.01", "Grzyboo");

register_clcmd("WprowadzLiczbe", "HandleWprowadz", -1);
}

public FunkcjaNaWpisywanie(id)
{
client_cmd(id, "messagemode WprowadzLiczbe");
}

public HandleWprowadz(id)
{
static arg[6];
read_argv(1, arg, 5);

if ( !strlen(arg) )
{
client_print(id, print_chat, "Nie moze zostac puste!");
client_cmd(id, "messagemode WprowadzLiczbe");
return PLUGIN_HANDLED;
}
gZmiennaGracza[id] = str_to_num(arg);

return PLUGIN_HANDLED;
}

Użytkownik ^Grzyboo edytował ten post 15.03.2012 21:52

  • +
  • -
  • 0

#3 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 18.03.2012 15:46

gZmiennaGracza[id] = str_to_num(arg);

A nie czasem ?
copy(gZmiennaGracza[id], 128, arg);



Tak mi kiedyś napisał maslo
str_to_num to jest tekst do liczby, a ty masz tekst do tekstu więc musisz użyć copy.

Bo robiłem sobie zapisanie hasła, jakie się wpisuje w messagemode do zmiennej z użyciem właśnie jak Ty str_to_num i takiej porady zadał mi maslo i od tego momentu smiga świetnie ;)

Użytkownik ogieR- edytował ten post 18.03.2012 15:47

  • +
  • -
  • 0
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#4 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6032
Godlike

  • Postów:10825
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 18.03.2012 16:41

spójrz w kod to zobaczysz "WprowadzLiczbe" dlatego jest str_to_num
  • +
  • -
  • 0

#5 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 18.03.2012 21:11

No widzę, ale myślałem, że on od tak sobie to nazwał. A co jak gracz wpisze np jakiś tekst ? Wtedy nie wyświetli go, czy cała zmienna będzie bez danych ? ; /
  • +
  • -
  • 0
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#6 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6032
Godlike

  • Postów:10825
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 18.03.2012 21:15

jak wprowadzi tekst to zmienna przyjmie wartość 0
skoro prosiliśmy gracza o liczby to oczekujemy liczb nie tekstu jak nie ma liczb to jest 0
jakbyśmy prosili o podanie tekstu to wtedy twój kod jest ok ( w sumie i tak jest ok ale my chcemy mieć liczbę a nie tekst :P )
  • +
  • -
  • 0

#7 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 19.03.2012 19:26

Czyli na upartego można użyć i jego i mój, ale pod 2 kwestie :
1 moje jest uniwersalne
2 jego jest jakby z takim.. zabezpieczeniem, że jeśli w liczbach pojawi się litera etc to zmienna przyjmie wartość 0

Dobrze rozumiem to ?
  • +
  • -
  • 0
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#8 sebul

    Godlike

  • Junior Admin

Reputacja: 2016
Godlike

  • Postów:5411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 19.03.2012 20:08

Dobrze rozumiem to ?

Nie, Twoim sposobem do tablicy wpiszesz jakiś ciąg znaków, a nie jakąś cyfrę. A jeszcze inaczej, "1" to nie to samo co 1.
  • +
  • -
  • 0
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
Generator tabeli expa - aż do 103600 poziomu

#9 mierzwi

    Banned

  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 22.03.2012 13:53

jeszcze dla pewności możesz użyć stocka i sprawdzić czy to liczba
bool:IsStrFloat(string[])
{
    new len = strlen(string);
    for ( new i = 0; i < len; i++ )
    {
        switch ( string[i] )
        {
            case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', '-':    continue;
            default:                            return false;
        }
    }
    
    return true;
}

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych