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

naprawa pluginu asysty - set_user_frags


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

#1 Tymo

    Życzliwy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:25
Offline

Napisano 29.12.2016 20:39

Witam.

Miałbym prośbę o przerobienie poniższego pluginu tak, aby nie powodował błędu:

[AMXX] Run time error 10 (plugin "asysty.amxx") (native "set_user_frags") - debug not enabled!

Kod pluginu:

#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <fun>

#define VERSION "0.1"

#define MAX 32
#define IsPlayer(%1) (1 <= %1 <= MAX && is_user_connected(%1))

new g_bAsysta[MAX+1][MAX+1];

public plugin_init() {
	register_plugin("Dodatkowy Exp", VERSION, "DarkGL")
	
	register_event("DeathMsg", "eventDeath", "a");
	register_event("HLTV", "newRound", "a", "1=0", "2=0") 
	
	RegisterHam(Ham_TakeDamage, "player", "fwDamage", 1);
}

public newRound()
{
	for(new i = 0;i <= MAX;i++){
		for(new j = 0;j <= MAX;j++)
			g_bAsysta[i][j] = 0;
	}
}

public client_connect(id){
	for(new j = 0;j <= MAX;j++)	g_bAsysta[id][j] = 0;
}

public fwDamage(iVictim, iInflicter, iAttacker, Float:fDamage, iBitDamage){
	if( (IsPlayer(iAttacker) && IsPlayer(iVictim)) && get_user_team(iVictim) != get_user_team(iAttacker) && iVictim != iAttacker)
		g_bAsysta[iAttacker][iVictim] += floatround(fDamage);
	
	return HAM_IGNORED;
}

public eventDeath(){
	new iKiller = read_data(1);
	new iVictim = read_data(2);
	
	if(IsPlayer(iKiller) && IsPlayer(iVictim) && iKiller != iVictim)
	{
		new sName[32];
		get_user_name(iVictim, sName, sizeof sName - 1);
		
		for(new i = 0 ; i <= MAX; i ++){
			if(i == iKiller)    continue;
			
			if(g_bAsysta[i][iVictim] >= 50){		
				
				set_hudmessage(255, 255, 255, -1.0, 0.70, 0, 2.0, 2.0, 0.05, 0.05, 4)
				show_hudmessage(i, "Asystowales w zabiciu gracza %s! +1 frag!", sName);
				
				set_user_frags(i, get_user_frags(i)+1)
			}
			
			g_bAsysta[i][iVictim] = 0;
		}
	}
}

  • +
  • -
  • 0

#2 tytusek

    Czempion

  • Power User

Reputacja: 229
Wszechwidzący

  • Postów:822
Offline

Napisano 29.12.2016 21:04

for(new i = 0 ; i <= MAX; i ++){

na

for(new i = 0 ; i <= MAX+1; i ++){


  • +
  • -
  • 0

#3 Tymo

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:25
Offline

Napisano 29.12.2016 22:00

Po tej zmianie w kodzie, plugin sypie (wręcz spamuje log) błedami:

[AMXX] Run time error 4 (plugin "asysty.amxx") - debug not enabled!

błąd raczej tkwi w tym:

set_user_frags(i, get_user_frags(i)+1)

na forum znalazłem taki post:

https://amxx.pl/topi...fragi/?p=700356

 

może jego zastosowanie by rozwiązało problem ale nie umiem go "wdrożyć" w kod.


Użytkownik Tymo edytował ten post 29.12.2016 22:06

  • +
  • -
  • 0

#4 tytusek

    Czempion

  • Power User

Reputacja: 229
Wszechwidzący

  • Postów:822
Offline

Napisano 29.12.2016 23:32

Po tej zmianie w kodzie, plugin sypie (wręcz spamuje log) błedami:

[AMXX] Run time error 4 (plugin "asysty.amxx") - debug not enabled!

błąd raczej tkwi w tym:

set_user_frags(i, get_user_frags(i)+1)

na forum znalazłem taki post:

https://amxx.pl/topi...fragi/?p=700356

 

może jego zastosowanie by rozwiązało problem ale nie umiem go "wdrożyć" w kod.

        for(new i = 1 ; i <= 33; i ++){
             if(i == iKiller) continue;
             if(!is_user_connected(i)) continue;
            
             if(g_bAsysta[i][iVictim] >= 50){        
                
                set_hudmessage(255, 255, 255, -1.0, 0.70, 0, 2.0, 2.0, 0.05, 0.05, 4)
                show_hudmessage(i, "Asystowales w zabiciu gracza %s! +1 frag!", sName);
                
                set_user_frags(i, get_user_frags(i)+1)
             }
            
            g_bAsysta[i][iVictim] = 0;
        }

lub z tym sposobem co dałeś link

        for(new i = 1 ; i <= 33; i ++){
            if(i == iKiller) continue;
            if(!is_user_connected(i)) continue;
            
            if(g_bAsysta[i][iVictim] >= 50){        
                
                set_hudmessage(255, 255, 255, -1.0, 0.70, 0, 2.0, 2.0, 0.05, 0.05, 4)
                show_hudmessage(i, "Asystowales w zabiciu gracza %s! +1 frag!", sName);
                
                ExecuteHamB(Ham_AddPoints, i, 1, true)
            }
            
            g_bAsysta[i][iVictim] = 0;
        }

  • +
  • -
  • 0

#5 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

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

Napisano 30.12.2016 01:29

Włącz debug na pluginie potem pokaż logi


  • +
  • -
  • 0

#6 Tymo

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:25
Offline

Napisano 30.12.2016 23:57

lub z tym sposobem co dałeś link

        for(new i = 1 ; i <= 33; i ++){
            if(i == iKiller) continue;
            if(!is_user_connected(i)) continue;
            
            if(g_bAsysta[i][iVictim] >= 50){        
                
                set_hudmessage(255, 255, 255, -1.0, 0.70, 0, 2.0, 2.0, 0.05, 0.05, 4)
                show_hudmessage(i, "Asystowales w zabiciu gracza %s! +1 frag!", sName);
                
                ExecuteHamB(Ham_AddPoints, i, 1, true)
            }
            
            g_bAsysta[i][iVictim] = 0;
        }

 

Ta poprawka spowodowała ześwirowanie pluginu :) przy asyście plugin dodawał po 40 fragów po czym wpływał na poprawnie zdobyte fragi nie dodając ich w ogóle :)

 

Włącz debug na pluginie potem pokaż logi

 

jutro włącze debug i wstawię logi


  • +
  • -
  • 0




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

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