Skocz do zawartości

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

Pobieranie wartosci cvaru przy zmiennej


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

#1 Filip1512

    Wszechmogący

  • Power User

Reputacja: 137
Zaawansowany

  • Postów:641
  • Steam:steam
  • Imię:Filip
  • Lokalizacja:Poland
Offline

Napisano 22.09.2012 12:45

Czesć,
w wolnym czasie piszę i uzupełniam sobie mój własny plugin (coś w stylu ruletki, lecz pisane od 0 i inaczej działa), ale do rzeczy.
Chciałałem do nowej zmiennej zadeklarować wartość z cvaru, a później tą zmienną użyć w colorchat.

Dokładniej to wygląda tak:

Na samej górze zadeklarowałem zmienną (linijka 17)

new malo_kasy = get_cvar_num("kasa_bonus");


A w colorchacie

ColorChat(id, YELLOW, "Potrzebujesz %d$, aby moc skorzystac z bonusu!", malo_kasy)


Lecz przy kompilacji wyskakuje mi błąd

Error: Must be a constant expression; assumed zero on line 17




  • +
  • -
  • 0
Filip / `NN
Wymuszanie rate'ów co spawna - update v2.1!

#2 Raen

    Wszechwiedzący

  • Power User

Reputacja: 160
Profesjonalista

  • Postów:536
  • GG:
  • Imię:Paweł
  • Lokalizacja:......
Offline

Napisano 22.09.2012 12:53

masz cvary czy pcvary?
jeśli pcvary to zamień na
new malo_kasy = get_pcvar_num("kasa_bonus");

  • +
  • -
  • 0

angel-little.png


#3 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Offline

Napisano 22.09.2012 12:54

Przykłądowo takowy public się kompiluje.
public write(id)
{
new malo_kasy = get_cvar_num("kasa_bonus");
ColorChat(id, NORMAL, "Potrzebujesz %d $, aby moc skorzystac z bonusu!", malo_kasy)
}

Moje pytanie brzmi - gdzie masz new malo_kasy a gdzie Wypisywanie?
  • +
  • -
  • 0

#4 Filip1512

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 137
Zaawansowany

  • Postów:641
  • Steam:steam
  • Imię:Filip
  • Lokalizacja:Poland
Offline

Napisano 22.09.2012 12:55

Cvary, bo nie wiem jak działają pcvary (nigdzie nie mogłem znaleść opisu czy czegoś, a podobno pcvary są szybsze...)

register_cvar("kasa_bonus", "16000")



CheQ, poczekaj, wkleje całe SMA

Spoiler


Oczywiśćie najpierw malo_kasy wypisałem nad colorchatem, ale wtedy mi wyskakują takie błędy:

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team

Error: Declaration of a local variable must appear in a compound block on line 106
Error: Undefined symbol "malo_kasy" on line 106
Warning: Loose indentation on line 107
Error: Undefined symbol "malo_kasy" on line 107

3 Errors.


Użytkownik `NN edytował ten post 22.09.2012 12:58

  • +
  • -
  • 0
Filip / `NN
Wymuszanie rate'ów co spawna - update v2.1!

#5 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Offline

Napisano 22.09.2012 13:12


#include <amxmodx>

#include <amxmisc>

#include <fakemeta_util>

#include <colorchat>

#include <fun>

#include <cstrike>

#define PLUGIN "Bonus za kase by Filip"

#define VERSION "1.0"

#define AUTHOR "Filip / `NN"

new bool:freeze[33];

new bool:bActive;

new bool:speed150[33];

new malo_kasy;

public plugin_init() {

	    register_plugin(PLUGIN, VERSION, AUTHOR)

	    register_event("CurWeapon","speed150a","be", "1=1")

	    register_logevent("PoczatekRundy", 2, "1=Round_Start");  //  poczatek rundy

	    register_logevent("round_end", 2, "1=Round_End")					    // koniec rundy

	    register_clcmd("say /bonus", "bonus")

	    register_cvar("kasa_bonus", "16000")

	    register_cvar("czas_bonus", "60")



malo_kasy = get_cvar_num("kasa_bonus");

}



// tu sie zaczyna sprawdzanie, komenda moze byc uzyta tylko przez okreslony w cvarze czas



public PoczatekRundy(){

	    bActive = true;

	    set_task(float(get_cvar_num("czas_bonus")), "end", 322);

}

public end(){

	    bActive = false;

	    for(new i; i<=32; i++)

	    {

			    if(is_user_connected(i))

			    {

					    freeze[i] = false;

					    speed150[i] = false;

			    }

	    }

}

public round_end(){

	    remove_task(322);	   // jesli runda bedzie trwala mniej niz podany czas, moze byc problem, wiec trzeba usunac taska

}

// koniec sprawdzania



public bonus(id){

	    if(bActive){

			    if(cs_get_user_money(id)>=get_cvar_num("kasa_bonus"))

			    {

					    new los

					    los = random_num(0,5)

					    switch(los){

							    case 0: {

									    ColorChat(id, RED, "Nie masz ani kasy, ani bonusu i wolno biegasz")

									    cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1)

									    set_user_maxspeed(id, 150.0)

									    speed150[id] = true;

							    }

							    case 1: {

									    ColorChat(id, GREEN, "Wygrywasz flare i mniejsza grawitacje!")

									    cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1)

									    set_user_gravity(id, 0.5)

									    give_item(id, "weapon_smokegrenade")

							    }

							    case 2: {

									    ColorChat(id, GREEN, "Wygrywasz MP5!")

									    cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1)

									    give_item(id, "weapon_mp5navy")

									    give_item(id, "ammo_9mm")

							    }

							    case 3: {

									    ColorChat(id, GREEN, "Wygrywasz Scouta!")

									    cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1)

									    give_item(id, "weapon_scout")

									    give_item(id, "ammo_762nato")

							    }

							    case 4: {

									    ColorChat(id, RED, "Nie mozesz sie ruszac przez 5 sekund!")

									    cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1)

									    freeze[id] = true

									    set_task(5.0, "zamrozenie", id)

							    }

							    case 5: {

									    ColorChat(id, BLUE, "Nie masz ani kasy, ani bonusu - Nic sie nie dzieje!")

									    cs_set_user_money(id, 0, 1)

							    }

					    }

			    }

			    else if(cs_get_user_money(id)<get_cvar_num("kasa_bonus"))

					    ColorChat(id, YELLOW, "Potrzebujesz %d$, aby moc skorzystac z bonusu!", malo_kasy)

	    }

	    else

			    ColorChat(id, RED, "Za pozno, sprobuj w nastepnej rundzie <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/smile.png' class='bbc_emoticon' alt=':)' />")

}



public speed150a(id){

	    if(speed150[id] == true)

	    {

			    set_user_maxspeed(id, 150.0)  

	    }

}



public CurWeapon(id){

	    if(!is_user_alive(id)){

			    return PLUGIN_CONTINUE;

	    }

	    if(freeze[id] == true){

			    set_user_maxspeed(id, 0.1);

	    }



	    return PLUGIN_CONTINUE;

}

public zamrozenie(id){

	    set_user_maxspeed(id);

}


  • +
  • -
  • 1

#6 Filip1512

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 137
Zaawansowany

  • Postów:641
  • Steam:steam
  • Imię:Filip
  • Lokalizacja:Poland
Offline

Napisano 22.09.2012 13:22

Ok działa, dzięki (wiem co zmieniłeś, żeby nie było) :)
Teraz kolejne pytania, skoro sma jest już wyżej podane.
Spoiler


////edit

STWORZYŁEM NOWY TEMAT ( http://amxx.pl/topic...funkcja-freeze/ ), TEN MOŻNA ZAMKNĄĆ

Użytkownik `NN edytował ten post 22.09.2012 13:41

  • +
  • -
  • 0
Filip / `NN
Wymuszanie rate'ów co spawna - update v2.1!




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

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