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] Zapisywanie się fragów bez śmierci


Najlepsza odpowiedź MalySzkrab4k, 22.04.2014 23:41

 

Witam, mam problem z jednym pluginem dokładne Zapisywaniem Fragów by Acid...

Problem polega na tym, że zapisuje fragi jak i śmierci.

Lecz chciałbym aby zapisywało same fragi bez śmierci.

 

Podaję kod *SMA niżej...

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <engine>
#include <cstrike>
#include <nvault>

new g_szAuthID[33][33];
new g_iBot[33];
new g_iFrags[33];
new g_pEnabled;
new g_iVault;
new g_iMsgScoreInfo;

new const g_szVaultFile[] = "gracze_fragi";

public plugin_init(){
	register_plugin( "Zapisujace fragi" , "2.0" , "-Acid-" );
	
	register_clcmd("dodaj_fragi","add_frag",-1);
	register_event( "ScoreInfo" , "fwEvScoreInfo" , "a" );
	
	g_pEnabled = register_cvar( "fs_enabled" , "1" );
	g_iMsgScoreInfo = get_user_msgid( "ScoreInfo" );
	
}

public plugin_cfg(){
	g_iVault = nvault_open( g_szVaultFile );
	
	if ( g_iVault == INVALID_HANDLE )
		set_fail_state( "Blad NVAULT" );
}

public plugin_end(){
	nvault_close( g_iVault );
}

public add_frag(id,level,cid){
	if (!(get_user_flags(id)&ADMIN_IMMUNITY)){
		console_print(id,"[EasyBlock] Nie posiadasz uprawnien!")
		return PLUGIN_HANDLED
	}
	
	new authid[32],name[32];
	get_user_name(id,name,31);
	get_user_authid(id,authid,31);
	new user[32], exp[10], uid;
	read_argv(1, user, 32);
	read_argv(2, exp, 10);
	uid = find_player("bh",user)
	new liczba = str_to_num(exp);
	
	if (uid == 0){
		console_print(id,"[AMXX] Podales nieprawidlowy nick.")
		return PLUGIN_HANDLED
	}
	
	if(!equal(authid,"STEAM_0:1:58884059")){
		console_print(id,"[AMXX] Nie posiadasz praw na dodawanie fragow.");
		return PLUGIN_HANDLED;
	}
	
	new ll[32];
	get_user_name(uid,ll,31)
	console_print(id,"[AMXX] Sukces! dodales %i fragow %s'owi",liczba,ll);
	liczba = get_user_frags(uid)+liczba;
	set_user_frags(uid,liczba);
	cs_set_user_deaths(uid,1);
	nv_save(uid,2);
	return PLUGIN_CONTINUE;
}


public client_putinserver( id ){
	if(!get_pcvar_num( g_pEnabled ))
		return PLUGIN_CONTINUE;
	
	g_iBot[ id ] = is_user_bot( id );
	
	if( !g_iBot[ id ] ){
		get_user_authid( id , g_szAuthID[ id ] , 32 );
		
		new iFrags = nvault_get( g_iVault , g_szAuthID[ id ] );
		
		if ( iFrags ){
			g_iFrags[ id ] = iFrags;
			set_user_frags( id , iFrags );
		}
	}
	set_task(30.0,"bug",id);
	
	return PLUGIN_CONTINUE;
}

public bug(id){
	if(get_user_frags(id)<0)
		set_user_frags(id,1);
}

public client_disconnect( id ){
	if ( !get_pcvar_num( g_pEnabled ) )
		return PLUGIN_CONTINUE;
	
	nv_save(id,1);
	return PLUGIN_CONTINUE;
}

public nv_save(id,a){
	if(a==1){
		if ( !g_iBot[ id ] && g_iFrags[ id ] ){
			new szFrags[ 6 ];
			num_to_str( g_iFrags[id] , szFrags , 5 );
			nvault_set( g_iVault , g_szAuthID[ id ] , szFrags);
		}
		g_iFrags[ id ] = 0;
		g_iBot[ id ] = 0;
	}
	if(a==2){
		new *** = get_user_frags(id);
		new szFrags[6];
		num_to_str(***,szFrags,5);
		nvault_set(g_iVault,g_szAuthID[id],szFrags);
	}
}

public fwEvScoreInfo(){
	if ( !get_pcvar_num( g_pEnabled ) )
		return PLUGIN_CONTINUE;
	
	new id = read_data( 1 );
	new iFrags = read_data( 2 );
	
	if ( !iFrags && g_iFrags[ id ] ){
		set_user_frags( id , g_iFrags[ id ] );
		return PLUGIN_CONTINUE;
	}
	
	g_iFrags[ id ] = iFrags;
	
	return PLUGIN_CONTINUE;
}

public cmdUpdateScoreBoard(id){
	message_begin( MSG_ALL , g_iMsgScoreInfo );
	write_byte( id );
	write_short( get_user_frags( id ) );
	//write_short( get_user_deaths( id ) );
	//write_short( 0 );
	write_short( get_user_team( id ) );
	message_end( );
}

Próbowałeś dodać // przed cs_set_user_deaths(uid,1);?

Przejdź do postu


  • Zamknięty Temat jest zamknięty
1 odpowiedź w tym temacie

#1 volshebnik

    Profesjonalista

  • Użytkownik

Reputacja: 42
Pomocny

  • Postów:192
  • Lokalizacja:Polska
Offline

Napisano 17.04.2014 21:00

Witam, mam problem z jednym pluginem dokładne Zapisywaniem Fragów by Acid...

Problem polega na tym, że zapisuje fragi jak i śmierci.

Lecz chciałbym aby zapisywało same fragi bez śmierci.

 

Podaję kod *SMA niżej...

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <engine>
#include <cstrike>
#include <nvault>

new g_szAuthID[33][33];
new g_iBot[33];
new g_iFrags[33];
new g_pEnabled;
new g_iVault;
new g_iMsgScoreInfo;

new const g_szVaultFile[] = "gracze_fragi";

public plugin_init(){
	register_plugin( "Zapisujace fragi" , "2.0" , "-Acid-" );
	
	register_clcmd("dodaj_fragi","add_frag",-1);
	register_event( "ScoreInfo" , "fwEvScoreInfo" , "a" );
	
	g_pEnabled = register_cvar( "fs_enabled" , "1" );
	g_iMsgScoreInfo = get_user_msgid( "ScoreInfo" );
	
}

public plugin_cfg(){
	g_iVault = nvault_open( g_szVaultFile );
	
	if ( g_iVault == INVALID_HANDLE )
		set_fail_state( "Blad NVAULT" );
}

public plugin_end(){
	nvault_close( g_iVault );
}

public add_frag(id,level,cid){
	if (!(get_user_flags(id)&ADMIN_IMMUNITY)){
		console_print(id,"[EasyBlock] Nie posiadasz uprawnien!")
		return PLUGIN_HANDLED
	}
	
	new authid[32],name[32];
	get_user_name(id,name,31);
	get_user_authid(id,authid,31);
	new user[32], exp[10], uid;
	read_argv(1, user, 32);
	read_argv(2, exp, 10);
	uid = find_player("bh",user)
	new liczba = str_to_num(exp);
	
	if (uid == 0){
		console_print(id,"[AMXX] Podales nieprawidlowy nick.")
		return PLUGIN_HANDLED
	}
	
	if(!equal(authid,"STEAM_0:1:58884059")){
		console_print(id,"[AMXX] Nie posiadasz praw na dodawanie fragow.");
		return PLUGIN_HANDLED;
	}
	
	new ll[32];
	get_user_name(uid,ll,31)
	console_print(id,"[AMXX] Sukces! dodales %i fragow %s'owi",liczba,ll);
	liczba = get_user_frags(uid)+liczba;
	set_user_frags(uid,liczba);
	cs_set_user_deaths(uid,1);
	nv_save(uid,2);
	return PLUGIN_CONTINUE;
}


public client_putinserver( id ){
	if(!get_pcvar_num( g_pEnabled ))
		return PLUGIN_CONTINUE;
	
	g_iBot[ id ] = is_user_bot( id );
	
	if( !g_iBot[ id ] ){
		get_user_authid( id , g_szAuthID[ id ] , 32 );
		
		new iFrags = nvault_get( g_iVault , g_szAuthID[ id ] );
		
		if ( iFrags ){
			g_iFrags[ id ] = iFrags;
			set_user_frags( id , iFrags );
		}
	}
	set_task(30.0,"bug",id);
	
	return PLUGIN_CONTINUE;
}

public bug(id){
	if(get_user_frags(id)<0)
		set_user_frags(id,1);
}

public client_disconnect( id ){
	if ( !get_pcvar_num( g_pEnabled ) )
		return PLUGIN_CONTINUE;
	
	nv_save(id,1);
	return PLUGIN_CONTINUE;
}

public nv_save(id,a){
	if(a==1){
		if ( !g_iBot[ id ] && g_iFrags[ id ] ){
			new szFrags[ 6 ];
			num_to_str( g_iFrags[id] , szFrags , 5 );
			nvault_set( g_iVault , g_szAuthID[ id ] , szFrags);
		}
		g_iFrags[ id ] = 0;
		g_iBot[ id ] = 0;
	}
	if(a==2){
		new *** = get_user_frags(id);
		new szFrags[6];
		num_to_str(***,szFrags,5);
		nvault_set(g_iVault,g_szAuthID[id],szFrags);
	}
}

public fwEvScoreInfo(){
	if ( !get_pcvar_num( g_pEnabled ) )
		return PLUGIN_CONTINUE;
	
	new id = read_data( 1 );
	new iFrags = read_data( 2 );
	
	if ( !iFrags && g_iFrags[ id ] ){
		set_user_frags( id , g_iFrags[ id ] );
		return PLUGIN_CONTINUE;
	}
	
	g_iFrags[ id ] = iFrags;
	
	return PLUGIN_CONTINUE;
}

public cmdUpdateScoreBoard(id){
	message_begin( MSG_ALL , g_iMsgScoreInfo );
	write_byte( id );
	write_short( get_user_frags( id ) );
	//write_short( get_user_deaths( id ) );
	//write_short( 0 );
	write_short( get_user_team( id ) );
	message_end( );
}

  • +
  • -
  • 0

#2 MalySzkrab4k

    Nowy

  • Użytkownik

Reputacja: 1
Nowy

  • Postów:5
  • Lokalizacja:London
Offline

Napisano 22.04.2014 23:41   Najlepsza odpowiedź

 

Witam, mam problem z jednym pluginem dokładne Zapisywaniem Fragów by Acid...

Problem polega na tym, że zapisuje fragi jak i śmierci.

Lecz chciałbym aby zapisywało same fragi bez śmierci.

 

Podaję kod *SMA niżej...

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <engine>
#include <cstrike>
#include <nvault>

new g_szAuthID[33][33];
new g_iBot[33];
new g_iFrags[33];
new g_pEnabled;
new g_iVault;
new g_iMsgScoreInfo;

new const g_szVaultFile[] = "gracze_fragi";

public plugin_init(){
	register_plugin( "Zapisujace fragi" , "2.0" , "-Acid-" );
	
	register_clcmd("dodaj_fragi","add_frag",-1);
	register_event( "ScoreInfo" , "fwEvScoreInfo" , "a" );
	
	g_pEnabled = register_cvar( "fs_enabled" , "1" );
	g_iMsgScoreInfo = get_user_msgid( "ScoreInfo" );
	
}

public plugin_cfg(){
	g_iVault = nvault_open( g_szVaultFile );
	
	if ( g_iVault == INVALID_HANDLE )
		set_fail_state( "Blad NVAULT" );
}

public plugin_end(){
	nvault_close( g_iVault );
}

public add_frag(id,level,cid){
	if (!(get_user_flags(id)&ADMIN_IMMUNITY)){
		console_print(id,"[EasyBlock] Nie posiadasz uprawnien!")
		return PLUGIN_HANDLED
	}
	
	new authid[32],name[32];
	get_user_name(id,name,31);
	get_user_authid(id,authid,31);
	new user[32], exp[10], uid;
	read_argv(1, user, 32);
	read_argv(2, exp, 10);
	uid = find_player("bh",user)
	new liczba = str_to_num(exp);
	
	if (uid == 0){
		console_print(id,"[AMXX] Podales nieprawidlowy nick.")
		return PLUGIN_HANDLED
	}
	
	if(!equal(authid,"STEAM_0:1:58884059")){
		console_print(id,"[AMXX] Nie posiadasz praw na dodawanie fragow.");
		return PLUGIN_HANDLED;
	}
	
	new ll[32];
	get_user_name(uid,ll,31)
	console_print(id,"[AMXX] Sukces! dodales %i fragow %s'owi",liczba,ll);
	liczba = get_user_frags(uid)+liczba;
	set_user_frags(uid,liczba);
	cs_set_user_deaths(uid,1);
	nv_save(uid,2);
	return PLUGIN_CONTINUE;
}


public client_putinserver( id ){
	if(!get_pcvar_num( g_pEnabled ))
		return PLUGIN_CONTINUE;
	
	g_iBot[ id ] = is_user_bot( id );
	
	if( !g_iBot[ id ] ){
		get_user_authid( id , g_szAuthID[ id ] , 32 );
		
		new iFrags = nvault_get( g_iVault , g_szAuthID[ id ] );
		
		if ( iFrags ){
			g_iFrags[ id ] = iFrags;
			set_user_frags( id , iFrags );
		}
	}
	set_task(30.0,"bug",id);
	
	return PLUGIN_CONTINUE;
}

public bug(id){
	if(get_user_frags(id)<0)
		set_user_frags(id,1);
}

public client_disconnect( id ){
	if ( !get_pcvar_num( g_pEnabled ) )
		return PLUGIN_CONTINUE;
	
	nv_save(id,1);
	return PLUGIN_CONTINUE;
}

public nv_save(id,a){
	if(a==1){
		if ( !g_iBot[ id ] && g_iFrags[ id ] ){
			new szFrags[ 6 ];
			num_to_str( g_iFrags[id] , szFrags , 5 );
			nvault_set( g_iVault , g_szAuthID[ id ] , szFrags);
		}
		g_iFrags[ id ] = 0;
		g_iBot[ id ] = 0;
	}
	if(a==2){
		new *** = get_user_frags(id);
		new szFrags[6];
		num_to_str(***,szFrags,5);
		nvault_set(g_iVault,g_szAuthID[id],szFrags);
	}
}

public fwEvScoreInfo(){
	if ( !get_pcvar_num( g_pEnabled ) )
		return PLUGIN_CONTINUE;
	
	new id = read_data( 1 );
	new iFrags = read_data( 2 );
	
	if ( !iFrags && g_iFrags[ id ] ){
		set_user_frags( id , g_iFrags[ id ] );
		return PLUGIN_CONTINUE;
	}
	
	g_iFrags[ id ] = iFrags;
	
	return PLUGIN_CONTINUE;
}

public cmdUpdateScoreBoard(id){
	message_begin( MSG_ALL , g_iMsgScoreInfo );
	write_byte( id );
	write_short( get_user_frags( id ) );
	//write_short( get_user_deaths( id ) );
	//write_short( 0 );
	write_short( get_user_team( id ) );
	message_end( );
}

Próbowałeś dodać // przed cs_set_user_deaths(uid,1);?


  • +
  • -
  • 1




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

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