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

Admin Gravity co zrobiłem źle?


  • Zamknięty Temat jest zamknięty
9 odpowiedzi w tym temacie

#1 AmD

    aemde

  • Użytkownik

Reputacja: 71
Pomocny

  • Postów:500
  • Steam:steam
  • Imię:Dariusz
  • Lokalizacja:Częstochowa
Offline

Napisano 10.05.2010 21:05

Witam!

Ostatnio męczę się od kilku dni by napisać "grawitację dla Admina"
Niby mi coś wyszło ale nie chce się kompilować:

przy kompilowaniu ukazuję się napis:
Error: Invalid statement; not in switch on line 27

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fun>

#define PLUGIN "Grawitacja dla admina"
#define VERSION "1.0"
#define AUTHOR "AmD"

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("amx_gravity","g_menu")
}

public g_menu(id)
{
new menu = menu_create("\yGrawitacja FastBH","graw_1")
menu_additem(menu,"\wGravity [Admin]","1",ADMIN_BAN)
menu_additem(menu,"\wGravity [Vip]","2",ADMIN_KICK)
menu_additem(menu,"\wGravity [Gold-User]","3",ADMIN_LEVEL_H)
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
}

public graw_1(id)
{
case 1:{ //lina 27
SubMenuA(id);
}
case 2:{
SubMenuV(id);
}
case 3:{
SubmenuG(id);
}
}
public SubMenuA(id)
{
new menu = menu_create("\yGrawitacja dla admina","graw_admin")
menu_additem(menu,"\wGravity wieksze o 100!","1")
menu_additem(menu,"\wGravity wieksze o 100!","2")
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
}
public SubMenuV(id)
{
new menu = menu_create("\yGrawitacja dla Vipa","graw_vip")
menu_additem(menu,"\wGravity mniejsze o 50","1")
menu_additem(menu,"\wGravity wieksze o 50!","2")
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
}

public SubMenuG(id)
{
new menu = menu_create("\yGrawitacja dla Gold-Usera","graw_gu")
menu_additem(menu,"\wGravity mniejsze o 20","1")
menu_additem(menu,"\wGravity wieksze o 20!","2")
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
}


public graw_admin(id,menu,item)
{
if(is_user_admin(id))
{
if(item==MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64]
new access, callback
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
new key = str_to_num(data)
switch(key)
{
case 1 :
{
set_user_gravity(id, get_user_gravity(id) -0.125) // grawita o 100
}
case 2:
{
set_user_gravity(id, get_user_gravity(id) +0.125) // grawita o 100
}
}

}
public graw_vip(id,menu,item)
{
if(is_user_admin(id))
{
if(item==MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64]
new access, callback
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
new key = str_to_num(data)
switch(key)
{
case 1 :
{
set_user_gravity(id, get_user_gravity(id) -0.0625) // grawita o 50
}
case 2:
{
set_user_gravity(id, get_user_gravity(id) +0.0625) // grawita o 50
}
}

}
public graw_gu(id,menu,item)
{
if(is_user_admin(id))
{
if(item==MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64]
new access, callback
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
new key = str_to_num(data)
switch(key)
{
case 1 :
{
set_user_gravity(id, get_user_gravity(id) -0.025) // grawita o 20
}
case 2: // jesli zla zmienna to powinno byc 0,0025
{
set_user_gravity(id, get_user_gravity(id) +0.025) // grawita o 20
}
}

}

return PLUGIN_HANDLED;
}


oraz mam taką prośbę mógł by ktoś zrobić takie małe zabezpieczenie bo jak na razie (powiedzmy że) ktoś będzie wybierał ciągle grawitację niższa to w końcu osiągnie gravity 0...

Zabezpieczenie ma na tym polega że jeśli Ktoś wybierze Funkcje (np. Większą Gravity) to by wybrać ją jeszcze raz ją musi pierw Nacisnąć Zmniejsz Gravity...


Dzięki i Pozdrawiam!

Użytkownik AmD edytował ten post 10.05.2010 21:07

  • +
  • -
  • 0

#2 Akus

    Nowy

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:8
  • Lokalizacja:Sosnowiec
Offline

Napisano 11.05.2010 13:37

Brakuje instrukcji switch (jakas_zmienna)
Poza tym:

SubmenuG(id);

Powinno być:

SubMenuG(id);

EDIT
Jeszcze jeden:

public SubMenuA(id)
{
new menu = menu_create("\yGrawitacja dla admina","graw_admin")
menu_additem(menu,"\wGravity wieksze o 100!","1")
menu_additem(menu,"\wGravity wieksze o 100!","2")
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
}

Powinno być:

public SubMenuA(id)
{
new menu = menu_create("\yGrawitacja dla admina","graw_admin")
menu_additem(menu,"\wGravity mniejsze o 100!","1")
menu_additem(menu,"\wGravity wieksze o 100!","2")
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
}


Użytkownik Akus edytował ten post 11.05.2010 14:16

  • +
  • -
  • 0

#3 Kusek

    z Wikipedii

  • Power User

Reputacja: 446
Wszechobecny

  • Postów:1 655
  • Imię:Krystian
Offline

Napisano 11.05.2010 13:43


public graw_1(id)
{
switch(key)
case 1:{
SubMenuA(id);
}
case 2:{
SubMenuV(id);
}
case 3:{
SubMenuG(id);
}
}

tak powinno być

Użytkownik Frajer edytował ten post 11.05.2010 13:43

  • +
  • -
  • 0

#4 AmD

    aemde

  • Autor tematu
  • Użytkownik

Reputacja: 71
Pomocny

  • Postów:500
  • Steam:steam
  • Imię:Dariusz
  • Lokalizacja:Częstochowa
Offline

Napisano 11.05.2010 15:25

przypominam że błąd jest w lini 27 czyli:
	case 1:{

to były małe błędy które poprawiłem potem ale nie poprawiłem tutaj :)

Error: Invalid statement; not in switch on line 27
Warning: Expression has no effect on line 27
Error: Expected token: ";", but found ":" on line 27

błąd kompilacji :)


po dodaniu

switch(key)
wyskakuje:

Error: Undefined symbol "key" on line 27
Error: Expected token: "{", but found "case" on line 29
Error: Undefined symbol "SubMenuA" on line 30

jak mnie pamięć nie myli nie opisywałem funkcji key więc ma tam chyba być id..

Użytkownik AmD edytował ten post 11.05.2010 15:31

  • +
  • -
  • 0

#5 Akus

    Nowy

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:8
  • Lokalizacja:Sosnowiec
Offline

Napisano 11.05.2010 16:57

U mnie po małych przeróbkach się kompiluje ^^
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fun>

#define PLUGIN "Grawitacja dla admina"
#define VERSION "1.0"
#define AUTHOR "AmD"

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("amx_gravity","g_menu")
}

public g_menu(id)
{
    new menu = menu_create("\yGrawitacja FastBH","graw_1")
    menu_additem(menu,"\wGravity [Admin]","1",ADMIN_BAN)
    menu_additem(menu,"\wGravity [Vip]","2",ADMIN_KICK)
    menu_additem(menu,"\wGravity [Gold-User]","3",ADMIN_LEVEL_H)
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
}

public graw_1(id)
{
	switch(id) {
        case 1:{     //lina 27
                SubMenuA(id);
        }
        case 2:{
                SubMenuV(id);
        }
        case 3:{
                SubMenuG(id);
        }
}
}
public SubMenuA(id)
{
    new menu = menu_create("\yGrawitacja dla admina","graw_admin")
    menu_additem(menu,"\wGravity mniejsze o 100!","1")
    menu_additem(menu,"\wGravity wieksze o 100!","2")
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
}
public SubMenuV(id)
{
    new menu = menu_create("\yGrawitacja dla Vipa","graw_vip")
    menu_additem(menu,"\wGravity mniejsze o 50","1")
    menu_additem(menu,"\wGravity wieksze o 50!","2")
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
}

public SubMenuG(id)
{
    new menu = menu_create("\yGrawitacja dla Gold-Usera","graw_gu")
    menu_additem(menu,"\wGravity mniejsze o 20","1")
    menu_additem(menu,"\wGravity wieksze o 20!","2")
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
}


public graw_admin(id,menu,item)
{
	if(item==MENU_EXIT)
	{
		menu_destroy(menu)
		return PLUGIN_HANDLED
	}
	new data[6], iName[64]
	new access, callback
	menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
	new key = str_to_num(data)
	switch(key)
	{
		case 1 :
		{
		set_user_gravity(id, get_user_gravity(id) -0.125)        // grawita o 100
		}
		case 2:
		{
		set_user_gravity(id, get_user_gravity(id) +0.125)        // grawita o 100
	}
    }
	return PLUGIN_HANDLED;
}
public graw_vip(id,menu,item)
{
    if(item==MENU_EXIT)
    {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }
    new data[6], iName[64]
    new access, callback
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
    new key = str_to_num(data)
    switch(key)
    {
        case 1 :
        {
            set_user_gravity(id, get_user_gravity(id) -0.0625)        // grawita o 50
        }
        case 2:
        {
            set_user_gravity(id, get_user_gravity(id) +0.0625)        // grawita o 50
        }
    }
return PLUGIN_HANDLED;
}
public graw_gu(id,menu,item)
{
    if(item==MENU_EXIT)
    {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }
    new data[6], iName[64]
    new access, callback
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
    new key = str_to_num(data)
    switch(key)
    {
        case 1 :
        {
            set_user_gravity(id, get_user_gravity(id) -0.025)        // grawita o 20
        }
        case 2:                                                                 // jesli zla zmienna to powinno byc 0,0025
        {
            set_user_gravity(id, get_user_gravity(id) +0.025)        // grawita o 20
        }
    }
return PLUGIN_HANDLED;
} 

  • +
  • -
  • 1

#6 AmD

    aemde

  • Autor tematu
  • Użytkownik

Reputacja: 71
Pomocny

  • Postów:500
  • Steam:steam
  • Imię:Dariusz
  • Lokalizacja:Częstochowa
Offline

Napisano 11.05.2010 17:16

niby tak ale jest 2 warrings

ps. a co z zabezpieczeniem? :)


@edit plugin działa ale nadal chciał bym zabezpieczenie :P

Użytkownik AmD edytował ten post 11.05.2010 17:19

  • +
  • -
  • 0

#7 Akus

    Nowy

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:8
  • Lokalizacja:Sosnowiec
Offline

Napisano 11.05.2010 18:11

Są nadal dwa warningi, ale nie chce mi się ich poprawiać ^^
Więc to powinno śmigać:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fun>

#define PLUGIN "Grawitacja dla admina"
#define VERSION "1.0"
#define AUTHOR "AmD"

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("amx_gravity","g_menu")
}

public g_menu(id)
{
    new menu = menu_create("\yGrawitacja FastBH","graw_1")
    menu_additem(menu,"\wGravity [Admin]","1",ADMIN_BAN)
    menu_additem(menu,"\wGravity [Vip]","2",ADMIN_KICK)
    menu_additem(menu,"\wGravity [Gold-User]","3",ADMIN_LEVEL_H)
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
}

public graw_1(id)
{
	switch(id) {
        case 1:{     //lina 27
                SubMenuA(id);
        }
        case 2:{
                SubMenuV(id);
        }
        case 3:{
                SubMenuG(id);
        }
}
}
public SubMenuA(id)
{
    new menu = menu_create("\yGrawitacja dla admina","graw_admin")
    menu_additem(menu,"\wGravity mniejsze o 100!","1")
    menu_additem(menu,"\wGravity wieksze o 100!","2")
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
}
public SubMenuV(id)
{
    new menu = menu_create("\yGrawitacja dla Vipa","graw_vip")
    menu_additem(menu,"\wGravity mniejsze o 50","1")
    menu_additem(menu,"\wGravity wieksze o 50!","2")
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
}

public SubMenuG(id)
{
    new menu = menu_create("\yGrawitacja dla Gold-Usera","graw_gu")
    menu_additem(menu,"\wGravity mniejsze o 20","1")
    menu_additem(menu,"\wGravity wieksze o 20!","2")
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
}


public graw_admin(id,menu,item)
{
	if(item==MENU_EXIT)
	{
		menu_destroy(menu)
		return PLUGIN_HANDLED
	}
	new data[6], iName[64]
	new access, callback
	menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
	new key = str_to_num(data)
	switch(key)
	{
		case 1 :
		{
			if(get_user_gravity(id) <= 0.875) client_print(id, print_chat,"[AMXX] Nie mozesz juz zmniejszyc swojej grawitacji." );
			else set_user_gravity(id, get_user_gravity(id) -0.125)        // grawita o 100
		}
		case 2:
		{
			if(get_user_gravity(id) >= 1.125) client_print(id, print_chat,"[AMXX] Nie mozesz juz zwiekszyc swojej grawitacji." );
			else set_user_gravity(id, get_user_gravity(id) +0.125)        // grawita o 100
	}
    }
	return PLUGIN_HANDLED;
}
public graw_vip(id,menu,item)
{
    if(item==MENU_EXIT)
    {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }
    new data[6], iName[64]
    new access, callback
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
    new key = str_to_num(data)
    switch(key)
    {
        case 1 :
        {
		if(get_user_gravity(id) <= 0.9375) client_print(id, print_chat,"[AMXX] Nie mozesz juz zmniejszyc swojej grawitacji." );
		else set_user_gravity(id, get_user_gravity(id) -0.0625)        // grawita o 50
        }
        case 2:
        {
		if(get_user_gravity(id) >= 1.0625) client_print(id, print_chat,"[AMXX] Nie mozesz juz zwiekszyc swojej grawitacji." );
		set_user_gravity(id, get_user_gravity(id) +0.0625)        // grawita o 50
	}
}
return PLUGIN_HANDLED;
}
public graw_gu(id,menu,item)
{
    if(item==MENU_EXIT)
    {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }
    new data[6], iName[64]
    new access, callback
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
    new key = str_to_num(data)
    switch(key)
    {
        case 1 :
        {
		if(get_user_gravity(id) <= 0.975) client_print(id, print_chat,"[AMXX] Nie mozesz juz zmniejszyc swojej grawitacji." );
		set_user_gravity(id, get_user_gravity(id) -0.025)        // grawita o 20
        }
        case 2:                                                                 // jesli zla zmienna to powinno byc 0,0025
        {
		if(get_user_gravity(id) >= 1.025) client_print(id, print_chat,"[AMXX] Nie mozesz juz zwiekszyc swojej grawitacji." );
		set_user_gravity(id, get_user_gravity(id) +0.025)        // grawita o 20
        }
    }
return PLUGIN_HANDLED;
} 

  • +
  • -
  • 0

#8 hardbot

    Banned

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:3 049
Offline

Napisano 11.05.2010 18:21

Proszę tutaj bez Warningów wystarczyło linijki poprawić :]

Załączone pliki


Użytkownik hardbot edytował ten post 11.05.2010 18:21


#9 AmD

    aemde

  • Autor tematu
  • Użytkownik

Reputacja: 71
Pomocny

  • Postów:500
  • Steam:steam
  • Imię:Dariusz
  • Lokalizacja:Częstochowa
Offline

Napisano 11.05.2010 18:41

Niech Ci Bóg w Dzieciach Wynagrodzi :* :) +

Użytkownik AmD edytował ten post 11.05.2010 18:41

  • +
  • -
  • 0

#10 Adminek AMXX.PL

    Admin :)

  • Bot

Reputacja: 156
Profesjonalista

  • Postów:7 476
  • Lokalizacja:AMXX.PL
Offline

Napisano 11.05.2010 18:59

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Wyjaśnione

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL




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

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