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

[ROZWIĄZANE] Nie podmienia modelu broni.


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

#41 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 14.03.2019 19:35

Nie mam siły już do Ciebie xD

 

Wstawiasz jakieś skrawki kodu, raz takie raz inne... kto sie ma w tym połapać?

 

Wczytuje Ci dobrze, nie widzisz tego?

masz potem parsowanie do 

kupiony1[id]

więc ta zmienna jest zerem. Jak Ty to obsługujesz w zmianie modelu to nie wiadomo


  • +
  • -
  • 0

#42 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 14.03.2019 19:54

Nie mam siły już do Ciebie xD

 

Wstawiasz jakieś skrawki kodu, raz takie raz inne... kto sie ma w tym połapać?

 

Wczytuje Ci dobrze, nie widzisz tego?

masz potem parsowanie do 

kupiony1[id]

więc ta zmienna jest zerem. Jak Ty to obsługujesz w zmianie modelu to nie wiadomo

 

 

Czyli jak mam to zrobić, bo już troche mnie też to męczy  xD

 

Masz tu kod jak zmiany modelu.  W sumie się skapnąłem, że dobra nvault zapisuję skiny. Ale przecież nie ma funkcji która ustawia zapisane skiny dla gracza :P

public CurWeapon(id){

	if(read_data(2) == CSW_KNIFE && zmiana1[id] != -1){

	set_pev(id, pev_viewmodel2, v_noz_skin[zmiana1[id]]); 
	set_pev(id, pev_weaponmodel2, p_noz_skin[zmiana1[id]]);
	}
	if(read_data(2) == CSW_AK47 && zmiana2[id] != -1){

	set_pev(id, pev_viewmodel2, v_ak_skin[zmiana2[id]]); 
	set_pev(id, pev_weaponmodel2, p_ak_skin[zmiana2[id]]); 
	}
}

Mógłbyś powiedzieć gdzie jak już taka funkcje dodać?


Użytkownik Black004 edytował ten post 14.03.2019 19:55

  • +
  • -
  • 0

#43 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 14.03.2019 20:13

Wczytujesz do kupiony1[id] a w CurWeapon uzywasz zmiana1[id

 

Podciągnij się troszkę z programowania bo będzie kiepsko :D

 

 

Co przechowujesz w zmiennych zmiana1 i kupiony1? Jaki jest ich cel


  • +
  • -
  • 1

#44 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 14.03.2019 20:46

usunąłem niepotrzebne zmienne, zastąpiłem je tymi "kupiony1" i pomimo to dalej nie działa. Ja ci może cały kod wyśle. Powiesz co nie tak i zamknijmy ten temat  ;>  :mur:


Użytkownik Black004 edytował ten post 14.03.2019 20:46

  • +
  • -
  • 0

#45 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 15.03.2019 14:36

Kod pluginu:

 

https://megawrzuta.pl/schowek/neoVj


  • +
  • -
  • 0

#46 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 15.03.2019 14:50

Wstaw jako załącznik


Rivit (15.03.2019 15:21):
Czemu nie jako załącznik? 10 razy lepiej edytować

  • +
  • -
  • 0

#47 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 15.03.2019 15:03

Wstaw jako załącznik

 

To po prostu tu to wrzucę.

 

http://wklejto.pl/722590


  • +
  • -
  • 0

#48 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 15.03.2019 15:25

nie kumam jednej rzeczy, mowie ci to pare razy. masz nawet kod w tym pluginie do zapisu jbpackow czy cos

a i tak w save_skin używasz nvault_get


  • +
  • -
  • 1

#49 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 15.03.2019 16:03

nie kumam jednej rzeczy, mowie ci to pare razy. masz nawet kod w tym pluginie do zapisu jbpackow czy cos

a i tak w save_skin używasz nvault_get

 

Zrobiłem tak jak mi kazałeś:

public load_skin(id)
{ 
        new name[48];
        get_user_name(id,name,47);
        new vaultkey[64], vaultdata[256];
        format(vaultkey, 63, "%s-skin", name);
        
        format(vaultdata,255,"#%i#%i", kupiony1[id], kupiony2[id]);
        
        nvault_get(g_vault, vaultkey, vaultdata,255);    
        log_amx("%s  LADOWANIE", vaultdata);
        return;
}
public save_skin(id)
{
        new name[48];
        get_user_name(id,name,47);
        new vaultkey[64], vaultdata[256];
        format(vaultkey, 63, "%s-skin", name);
        nvault_set(g_vault, vaultkey, vaultdata);                                                                                                                                     
        
        replace_all(vaultdata, 255, "#", " ");
        
        new temp_knifemodel[33];
        new temp_akmodel[33];
        
        parse(vaultdata, temp_knifemodel,32, temp_akmodel,32);
        
        kupiony1[id] = str_to_num(temp_knifemodel);
        kupiony2[id] = str_to_num(temp_akmodel);
        log_amx("%s  ZAPISYWANIE", vaultdata);
        
        return;
}

I teraz jest taki crash:

./hlds_run: line 255: 7438 Segmentation fault (core dumped) $HL_CMD
email debug.log to [email protected]
Fri 15 Mar 16:08:22 CET 2019: Server restart in 10 seconds

Użytkownik Black004 edytował ten post 15.03.2019 16:09

  • +
  • -
  • 0

#50 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 15.03.2019 16:22

public load_skin(id)
{ 
	new name[48];
	get_user_name(id,name,47); //pobranie nicku
	new vaultkey[64], vaultdata[256];
	formatex(vaultkey, 63, "%s-skin", name); //tworzymy klucz po ktorym bedzie odczytywane info z nvault. w tym przypadku to nick + -skin czyli np Player-skin
	
	if(nvault_get(g_vault, vaultkey, vaultdata,255)){ //pobieramy dane
		new parsedInfo[2][5];
		parse(vaultdata, parsedInfo,charsmax(parsedInfo[]), parsedInfo,charsmax(parsedInfo[])); //parsujemy dane po spacji - patrz jak sa zapisywane dane
		kupiony1[id] = str_to_num(parsedInfo[0]); //ze stringa na int
		kupiony2[id] = str_to_num(parsedInfo[1]);   
		log_amx("%s  LADOWANIE", vaultdata);
		log_amx("wczytane zmienne %i %i", kupiony1[id], kupiony2[id])
	}
}
public save_skin(id)
{
	new name[48];
	get_user_name(id,name,47);
	new vaultkey[64], vaultdata[256];
	formatex(vaultkey, 63, "%s-skin", name); //tworzymy klucz
	formatex(vaultdata, 255, "%i %i", kupiony1[id], kupiony2[id]) //tutaj wstawiamy dane ktore chcemy zapisac, oddzielam spacja, to sa nasze dane ktore beda zapisane do pliku
	nvault_set(g_vault, vaultkey,vaultdata); //ustawiamy dane ktore sformatowalismy pod dany klucz                                                                                                                                        
	log_amx("%s  ZAPISYWANIE", vaultdata);
}

Zacznij coś czytać i rozwijać wiedze troche, bo widać, że całkiem nie rozumiesz co gdzie i jak :/


  • +
  • -
  • 1

#51 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 15.03.2019 16:39

./hlds_run: line 255:   933 Segmentation fault      (core dumped) $HL_CMD
email debug.log to [email protected]
Fri 15 Mar 16:38:55 CET 2019: Server restart in 10 seconds

Nadal :/


  • +
  • -
  • 0

#52 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 15.03.2019 19:43

public load_skin(id)
{ 
	new name[48];
	get_user_name(id,name,47); //pobranie nicku
	new vaultkey[64], vaultdata[256];
	formatex(vaultkey, 63, "%s-skin", name); //tworzymy klucz po ktorym bedzie odczytywane info z nvault. w tym przypadku to nick + -skin czyli np Player-skin
	
	if(nvault_get(g_vault, vaultkey, vaultdata,255)){ //pobieramy dane
		new parsedInfo[2][5];
		parse(vaultdata, parsedInfo,charsmax(parsedInfo[]), parsedInfo,charsmax(parsedInfo[])); //parsujemy dane po spacji - patrz jak sa zapisywane dane
		kupiony1[id] = str_to_num(parsedInfo[0]); //ze stringa na int
		kupiony2[id] = str_to_num(parsedInfo[1]);   
		log_amx("%s  LADOWANIE", vaultdata);
		log_amx("wczytane zmienne %i %i", kupiony1[id], kupiony2[id])
	}
}
public save_skin(id)
{
	new name[48];
	get_user_name(id,name,47);
	new vaultkey[64], vaultdata[256];
	formatex(vaultkey, 63, "%s-skin", name); //tworzymy klucz
	formatex(vaultdata, 255, "%i %i", kupiony1[id], kupiony2[id]) //tutaj wstawiamy dane ktore chcemy zapisac, oddzielam spacja, to sa nasze dane ktore beda zapisane do pliku
	nvault_set(g_vault, vaultkey,vaultdata); //ustawiamy dane ktore sformatowalismy pod dany klucz                                                                                                                                        
	log_amx("%s  ZAPISYWANIE", vaultdata);
}

Zacznij coś czytać i rozwijać wiedze troche, bo widać, że całkiem nie rozumiesz co gdzie i jak :/

 

 

Poradziłem sobie :) Dzięki za pomoc. <3


  • +
  • -
  • 0

#53 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 15.03.2019 19:44

Poradziłeś? Wczytuje już ok?


  • +
  • -
  • 1

#54 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 15.03.2019 20:17

Tak, jeszcze tylko chciałbym się dowiedzieć, jak zrobić że jak ktoś ma juz kupionego tego skina pisało, "założyłeś <nazwa skina>" zamiast tego "Kupiles skina %s". A w menu było "<nazwa skina> KUPIONY"

public SkinKNIVE(id)
{ 
    {       
        new skin[64]
        new menu = menu_create("\wWybierz nóż","handle_menuKNIVE") 
        for(new i = 0; i<sizeof noz_skin; i++)
        {
    formatex(skin, charsmax(skin), "%s%s  \w|   Cena: \w%i$", (kupiony1[id]==i) ? "\r":"\y", noz_skin[i], noz_cena[i]);
    menu_additem(menu, skin);
    }
        menu_setprop(menu,MPROP_EXIT,MEXIT_ALL) 
        menu_display(id,menu,0)
                return PLUGIN_HANDLED;
    }
}

public handle_menuKNIVE(id, menu, item){

        if (item == MENU_EXIT){ 
                menu_destroy(menu); 
                return PLUGIN_HANDLED;
        }
        
        if(!sprawdz(id, noz_cena[item])){
                client_print(id, print_chat, "Nie stac cie na tego skina.");
                return PLUGIN_HANDLED;
        }
        
        client_print(id, print_chat, "Kupiles skin: %s", noz_skin[item]);
        kupiony1[id] = item;
        menu_destroy(menu); 
        return PLUGIN_HANDLED; 
}

Przez ten temat na pewno więcej już wiem o nvault :) Dzięki jeszcze raz. I za słowa krytykujące mnie też :P


Użytkownik Black004 edytował ten post 15.03.2019 20:21

  • +
  • -
  • 0

#55 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 15.03.2019 21:17

public SkinKNIVE(id)
{      
    new skin[64]
    new menu = menu_create("\wWybierz nóż","handle_menuKNIVE") 
    for(new i = 0; i<sizeof noz_skin; i++)
    {
        if(kupiony1[id]==i){
            formatex(skin, charsmax(skin), "\r%s  \w|   KUPIONY", noz_skin[i]);
        }else{
            formatex(skin, charsmax(skin), "\y%s  \w|   Cena: \w%i$", noz_skin[i], noz_cena[i]);
        }
        menu_additem(menu, skin);
    }
    menu_display(id,menu)
}
 
public handle_menuKNIVE(id, menu, item){
 
    if (item == MENU_EXIT){ 
       menu_destroy(menu); 
       return PLUGIN_HANDLED;
    }

    if(kupiony1[id] == item){
        client_print(id, print_chat, "zalozyles %s", noz_skin[item]);
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    
    if(!sprawdz(id, noz_cena[item])){
        client_print(id, print_chat, "Nie stac cie na tego skina.");
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    
    client_print(id, print_chat, "Kupiles skin: %s", noz_skin[item]);
    kupiony1[id] = item;
    menu_destroy(menu); 
    return PLUGIN_HANDLED; 
}

Coś takiego, możliwe błędy przy kompilacji, ale musisz sam sobie poradzić już


  • +
  • -
  • 0

#56 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 15.03.2019 21:33

Błędów nie było, ale zauważyłem większy błąd, ponieważ jak kupie 1 skina i kupie 2 to jak chce zmienic na tego 1 to znowu muszę go kupić :/ Kurde, jak coś jest już dobrze to znajdzie się coś jeszcze :/


  • +
  • -
  • 0

#57 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 15.03.2019 23:28

Dlaczego nie osobne menu do kupowania i ustawiania skina?


  • +
  • -
  • 0

#58 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 16.03.2019 09:24

Mozna by tak zrobić, ale i tak trzeba by było i tak ustawić w menu kupowanie że pisze <nazwa skina> kupiony i każdy skin który kupie żeby tak pisało. Chyba trzeba by było zrobic nowa zmienna która by zapisywała w nvault jakie skiny gracz ma kupione. Dobrze myśle? Masz tu link do kodu bo tam niechcący wygasanie włączyłem:

 

http://wklejto.pl/722755


  • +
  • -
  • 0

#59 Black004

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:371
  • GG:
  • Imię:Błażej
  • Lokalizacja:Polska
Offline

Napisano 16.03.2019 18:05

Dobra, można zamknąć. Dałem rade, ktoś mi pomógł.


  • +
  • -
  • 0

#60 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

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

Napisano 16.03.2019 18:18

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0




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

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