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

Zapis rang i wczytywanie


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

#1 Sing

    Nowy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Dominik
  • Lokalizacja:Siedlce
Offline

Napisano 03.05.2017 19:23

Opis problemu: chciałem połączyć 2 plugin a dokładnie 3drank i zwykły plugin z rangami tak aby od ilości zabić jak jest w pluginie rangi pojawiała sie nad glowa ikona od ilosc zabic lecz rangi sie wczytuja ikona sie nie zmiania na inna proszę o pomoc z waszej strony. Jestem amatorem wiec proszę o niekrytykowanie

 

 

KOD SMA:

#include < amxmodx >
#include < fakemeta >
#include < hamsandwich >
#include < amxmisc >
#include < csx >

#define PLUGIN "3D Rank"
#define VERSION "0.4"
#define AUTHOR "Payampap"

#define TASK 666
#define FLAG ADMIN_KICK

new const gsz_RankModel [ ] = "models/3dranks.mdl"

new gp_AdminRank
new gp_BotRank

new gi_PlayerRank [ 33 ]

public plugin_init ( )
{
	register_plugin ( PLUGIN, VERSION, AUTHOR )
	
	RegisterHam ( Ham_Killed, "player", "player_killed", 1 )
	RegisterHam ( Ham_Spawn, "player", "player_spawned", 1 )
	
	gp_AdminRank = register_cvar ( "3drank_admin", "1" )
	gp_BotRank = register_cvar ( "3drank_bot", "0" )
}

public plugin_precache ( )
{
	precache_model ( gsz_RankModel )
}

public client_putinserver ( index )
{
	create_rank_entity ( index )
}

public client_disconnect ( index )
{
	if ( gi_PlayerRank [ index ] > 0 )
		engfunc ( EngFunc_RemoveEntity, gi_PlayerRank [ index ] )
	
	gi_PlayerRank [ index ] = 0
	
	if(task_exists(TASK+index))
    remove_task(TASK+index)
}
//rabga
public client_connect(index)
{
    if(is_user_bot(index))
        return
 
    new param[1]
    param[0] = index
 
    set_task(1.0,"rank",TASK+index,param,1,"b")
}
public rank(param[])
{
    new index = param[0]
 
    static stats[8], body[8]
    get_user_stats(index, stats, body)
 
    new ranga[30]
 
    if ( stats[0] >= 0 && stats[0] <= 29)
        format(ranga,29,"Lamus")
    else if ( stats[0] >= 30 && stats[0] <= 59)
        format(ranga,29,"Poczatkujacy")
    else if ( stats[0] >= 60 && stats[0] <= 119)
        format(ranga,29,"Wiesniak")
    else if ( stats[0] >= 120 && stats[0] <= 209)
        format(ranga,29,"Sierota")
    else if ( stats[0] >= 210 && stats[0] <= 324)
        format(ranga,29,"Kox")
    else if ( stats[0] >= 325 && stats[0] <= 499)
        format(ranga,29,"Cherlak")
    else if ( stats[0] >= 500 && stats[0] <= 729)
        format(ranga,29,"Kozak")
    else if ( stats[0] >= 730 && stats[0] <= 999)
        format(ranga,29,"Snajper")
    else if ( stats[0] >= 100 && stats[0] <= 1399)
        format(ranga,29,"Macho")
 
    set_hudmessage(255, 255, 255, 0.15, 0.55)
    show_hudmessage(index, "Ranga: %s^nZabojstw: %d",ranga,stats[0])
}  

//
public create_rank_entity ( index )
{
	gi_PlayerRank [ index ] = engfunc ( EngFunc_CreateNamedEntity, engfunc ( EngFunc_AllocString, "info_target" ) )
	
	set_pev ( gi_PlayerRank [ index ], pev_movetype, MOVETYPE_FOLLOW )
	set_pev ( gi_PlayerRank [ index ], pev_aiment, index )
	set_pev ( gi_PlayerRank [ index ], pev_rendermode, kRenderNormal )
	set_pev ( gi_PlayerRank [ index ], pev_renderfx, kRenderFxGlowShell )
	set_pev ( gi_PlayerRank [ index ], pev_renderamt, 5.0 )
	
	engfunc ( EngFunc_SetModel, gi_PlayerRank [ index ], gsz_RankModel )
}

public player_killed ( victim, attacker, gid )
{
	if ( is_valid_player ( attacker ) )
	{
		check_rank ( attacker )
	}
}

public player_spawned ( spawned )
{
	if ( is_valid_player ( spawned ) )
	{
		check_rank ( spawned )
	}
}

public check_rank ( index )
{
	new PlayerRank = get_player_rank ( index )
	
	set_pev ( gi_PlayerRank [ index ], pev_body, PlayerRank )
	
	switch ( PlayerRank )
	{
		case 1, 2, 3:
		{
			set_pev ( gi_PlayerRank [ index ], pev_rendercolor, { 255.0, 255.0, 255.0 } )
		}
		
		case 12:
		{
			set_pev ( gi_PlayerRank [ index ], pev_rendercolor, { 255.0, 0.0, 0.0 } )
		}
		
		default:
		{
			set_pev ( gi_PlayerRank [ index ], pev_rendercolor, { 255.0, 255.0, 0.0 } )
		}
	}
}

stock get_player_rank ( index )
{
	if ( get_pcvar_num ( gp_AdminRank ) && get_user_flags ( index ) & FLAG )
	{
		return 11
	}
	
	if ( get_pcvar_num ( gp_BotRank ) && is_user_bot ( index ) )
	{
		return 12
	}
	
	new PlayerFrags = get_user_frags ( index )
	
	switch ( PlayerFrags )
	{
		case 0..29:
		{
			return 1
		}
		
		case 30..59:
		{
			return 2
		}
		
		case 60..119:
		{
			return 3
		}
		
		case 120..209:
		{
			return 4
		}
		
		case 210..324:
		{
			return 5
		}
		
		case 325..499:
		{
			return 6
		}
		
		case 500..729:
		{
			return 7
		}
		
		case 730..999:
		{
			return 8
		}
		
		case 1000..1399:
		{
			return 9
		}
		
		default:
		{
			return 10
		}
	}
	
	return 0
}

stock is_valid_player ( index )
{
	if ( is_user_connected ( index ) && 1 <= index <= 32 )
	{
		return true
	}
	
	return false
}

Załączone pliki


  • +
  • -
  • 0

#2 Maciuś20

    Profesjonalista

  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:202
  • Steam:steam
  • Imię:Maciek
  • Lokalizacja:Daleko
Offline

Napisano 03.05.2017 19:28

Musisz zrobić odpowiedni natyw by jeden plugin miał dostęp do drugiego https://amxx.pl/topic/20034-natywy/
Lub odpowiednio go skleić
  • +
  • -
  • 1

#3 Sing

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Dominik
  • Lokalizacja:Siedlce
Offline

Napisano 03.05.2017 20:00

A czy moge prosic o przerobienie pluginu bo jestem w tym totalnym lajkonikiem


  • +
  • -
  • 0

#4 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 381
Offline

Napisano 04.05.2017 06:56

Daj .sma obu pluginów, ale w plikach, nie na listingu.

 

Chcesz aby ten 3d rank używał "fragów" z pluginu rangi?


  • +
  • -
  • 0

#5 Sing

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Dominik
  • Lokalizacja:Siedlce
Offline

Napisano 04.05.2017 13:35

Tak Tiback o to mi chodzi żeby wczytywalo z pluginu rangi

Załączone pliki


  • +
  • -
  • 0

#6 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 381
Offline

Napisano 04.05.2017 17:32

Test

 

Tylko wiesz, że te rangi 3d kończą się na 81 fragach. Trza by se edytować w .sma jak chcesz.

 

Tu sie zmienia przedziały:

	switch ( PlayerFrags )
	{
		case 0..5:
		{
			return 1
		}
		
		case 6..11:
		{
			return 2
		}
		
		case 12..18:
		{
			return 3
		}
		
		case 19..26:
		{
			return 4
		}
		
		case 27..35:
		{
			return 5
		}
		
		case 36..45:
		{
			return 6
		}
		
		case 46..56:
		{
			return 7
		}
		
		case 57..68:
		{
			return 8
		}
		
		case 69..81:
		{
			return 9
		}
		
		default:
		{
			return 10
		}

Załączone pliki


  • +
  • -
  • 1

#7 Sing

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Dominik
  • Lokalizacja:Siedlce
Offline

Napisano 04.05.2017 17:47

dzięki działa :)


  • +
  • -
  • 0




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

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