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
 

KoRrNiK - zdjęcie

KoRrNiK

Rejestracja: 26.12.2017
Aktualnie: Przegląda temat EasyKill - Szuka osób na wysokie...
Poza forum Ostatnio: wczoraj, 23:15
-----

#772078 [ROZWIĄZANE] Skyboxy od czasu do czasu

Napisane przez KoRrNiK on 21.06.2021 13:47

Trzymaj powinno działać. 

#pragma semicolon 	1

#include <amxmodx>

new const PLUGIN[] 	= 	"Skybox from time";
new const VERSION[] 	= 	"v1.0";
new const AUTHOR[] 	= 	"KoRrNiK - amxx.pl/user/69614-korrnik/";

enum _:skyEnum { SKY_REAL = 0, SKY_ARCHIPELAGO, SKY_MILKWORD };

new const skyWalls[][] = { "up","dn","ft","bk","lf","rt" };
new const skyName[skyEnum][] = { "real", "archipelago", "MilkWorld" };

public plugin_precache(){
	
	register_plugin(
		PLUGIN,
		VERSION,
		AUTHOR
	);

	new hour = 0, setSky = SKY_REAL;
	new bool:foundSky = true;
	new gText[33]; 
	
	time(hour);
	
	if(hour >= 7 && hour < 15) setSky = SKY_REAL;
	else if(hour >= 15 && hour < 21) setSky = SKY_ARCHIPELAGO;
	else setSky = SKY_MILKWORD;
	
	for(new i = 0; i < sizeof(skyWalls); ++i){
		
		format(gText, sizeof(gText) - 1, "gfx/env/%s%s.tga", skyName[setSky], skyWalls[i]);

		if(file_exists(gText)) precache_generic(gText);
		else{
			log_amx("Nie znaleziono pliku: '%s'", gText);
			foundSky = false;
			break;
		}
	}
	
	if(foundSky) set_cvar_string("sv_skyname", skyName[setSky]);

}

Oraz nie dajesz tych skyboxow do \sprites tylko do \gfx\env


  • +
  • -
  • 2


#771979 Modele CS:GO MOD

Napisane przez KoRrNiK on 03.06.2021 11:47

Trzymaj: https://github.com/T.../cstrike/models

W paczce ozona modele działają na submodelach czyli: w jednym modelu może znajdować się max. 40 tekstur skinów. 

I pod tym linkiem masz wszystkie modele ze skinami i chyba tam jest ~1400 skinów. 


  • +
  • -
  • 1


#771921 Ściana blokująca w jedną stronę

Napisane przez KoRrNiK on 25.05.2021 20:54

Możesz spróbować to zrobić w taki sposób ale nie obiecuję, że będzie działał.

 

Dodajesz dwa eventy

register_forward(FM_CmdStart, 	   "fw_CmdStart",		0);
register_forward(FM_AddToFullPack, "fw_addtofullpack", 		1);

i zrobić np. 

public fw_CmdStart( id, uc_handle, randseed ){
	
	if( !is_user_alive(id) || !is_user_connected(id) || is_user_hltv(id) )
		return FMRES_IGNORED;
	
	floorTouching(id);
	
	return FMRES_IGNORED;
}

I w tym floorTouching sprawdzać czy stoi na danym obiekcie.

new ground = pev(id, pev_groundentity);

+ sprawdzasz classname obiektu

new szClass[9];
pev(ground, pev_classname, szClass, sizeof(szClass) - 1 );

No i później poprzez taki argument sprawdzasz czy wszystko się zgadza: 

ground != 0 && ( pev(id, pev_flags) & FL_ONGROUND ) && equal(szClass, "xyz")

i jeśli stoisz na tym obiekcie zmieniasz jakąś zmienną na true a jeśli nie to na false;

 

I teraz używasz addtofullpack

public fw_addtofullpack( es, e, ent, host, host_flags, player, p_set ){

poprzez classname oraz czy tamta twoja zmienna jest na true i jeśli tak to zmieniasz jego pozycję czy tam solid to musisz sprawdzić  " ES_Solid " " ES_Origin "

 

 


  • +
  • -
  • 3


#771760 [ROZWIĄZANE] Odradzanie podczas rozgrzewki

Napisane przez KoRrNiK on 03.05.2021 13:42

To sprawdź czy działa :)


  • +
  • -
  • 1


#771757 [ROZWIĄZANE] Odradzanie podczas rozgrzewki

Napisane przez KoRrNiK on 03.05.2021 07:30

Na samej górze dodaj bibliotekę hamsandwich

#include <hamsandwich>

W plugin_init musisz zarejestrować event Ham_Killed

RegisterHam(Ham_Killed, "player", "ham_Killed", true);

Oraz na samym dole dodaj sobie funkcję odpowiadającą za zginięcie + respawn która wykonuje się po 0.5 sekundy od zginięcia, możesz to sobie zmienić set_task(0.5,

public ham_Killed(id){

	if(!is_user_connected(id) || get_user_team(id) == 3 || get_user_team(id) == 0 || is_user_alive(id)) return HAM_IGNORED;
	if(!noze) return HAM_IGNORED;
	
	set_task(0.5, "spawnPlayer", id);
	
	return HAM_IGNORED;
}
public spawnPlayer(id){
	if(!is_user_connected(id) || get_user_team(id) == 3 || get_user_team(id) == 0 || is_user_alive(id)) return;
	if(!noze) return;
	
	ExecuteHamB(Ham_CS_RoundRespawn, id);
}

  • +
  • -
  • 2


#771706 Prosba o Wytlumaczenie

Napisane przez KoRrNiK on 26.04.2021 21:46

Nie jestem pewien czy o to Ci chodziło dokładnie ale na szybko coś takiego napisałem więc możesz przekopiować z tego kodu.

#include <amxmodx>

#if !defined client_print_color
	#error THIS VERSION IS NOT SUPPORTED! PLEASE USE AMXX 1.8.3 OR 1.9!
#endif

#pragma semicolon 	1

new const PLUGIN[] 		= 	"Hud Settings";
new const VERSION[] 		= 	"v1.0";
new const AUTHOR[] 		= 	"KoRrNiK - amxx.pl/user/69614-korrnik/";

enum _:enumHuds { COLOR_RED, COLOR_GREEN, COLOR_BLUE, bool:HUD_DISABLE };
new userHud[33][enumHuds];

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	register_clcmd("say /hud", "menuHudSettings");
}

public menuHudSettings(id){
	
	if(!is_user_connected(id)) return;
	
	new menu = menu_create("Ustawienia HUD", "menuHudSettings_2");
	
	menu_additem(menu, fmt("Hud: %s^n", userHud[id][HUD_DISABLE] ? "\yWlaczony" : "\dWylaczony"));
	
	menu_additem(menu, fmt("Kolor Czerwony:\r %d", userHud[id][COLOR_RED]));
	menu_additem(menu, fmt("Kolor Zielony:\r %d", userHud[id][COLOR_GREEN]));
	menu_additem(menu, fmt("Kolor Niebieski:\r %d", userHud[id][COLOR_BLUE]));
	
	menu_display(id, menu, 0);
		
}

public menuHudSettings_2(id, menu, item){
	if(item != MENU_EXIT){
		switch(item){
			case 0:{
				userHud[id][HUD_DISABLE] =! userHud[id][HUD_DISABLE];
				client_print_color(id, id, "^4[*]^1 Hud zostal:^3 %s", userHud[id][HUD_DISABLE] ? "Wlaczony" : "Wylaczony");
			}
			case 1: if ((userHud[id][COLOR_RED] += 15) > 255) userHud[id][COLOR_RED] = 0;
			case 2: if ((userHud[id][COLOR_GREEN] += 15) > 255) userHud[id][COLOR_GREEN] = 0;
			case 3: if ((userHud[id][COLOR_BLUE] += 15) > 255) userHud[id][COLOR_BLUE] = 0;
			
		}
		menuHudSettings(id);
	} else menu_destroy(menu);
}

  • +
  • -
  • 1


#771557 [ROZWIĄZANE] Szukam Pluginu Stolice

Napisane przez KoRrNiK on 12.04.2021 14:11

Linijka 

return PLUGIN_HANDLED;

zmień na 

return PLUGIN_CONTINUE;

  • +
  • -
  • 1


#771552 [ROZWIĄZANE] Szukam Pluginu Stolice

Napisane przez KoRrNiK on 12.04.2021 11:33

Trzymaj powinno działać.

Aby dodać nowy kraj dodajesz nową linijkę

new const writeCapital[ALL_CAPITAL][2][] = {
	 { "Polska", 	"Warszawa" }
	,{ "Francja", 	"Paryz" }
	,{ "Niemcy", 	"Berlin" }
};

Oraz wpisujesz liczbę ile jest krajów 

#define ALL_CAPITAL 3

Tutaj kod oraz nie zapomnij abyś sobie coś dodał za nagrodę pod linijką 72 masz funkcję. 

#include <amxmodx>
#include <amxmisc>
 
#pragma semicolon 1

new const PLUGIN[]	= 	"xyz";
new const VERSION[]	= 	"1.0";
new const AUTHOR[]	= 	"KoRrNiK - amxx.pl/user/69614-korrnik/";

enum _:capital { RANDOM_ID, bool:RANDOM_ON }
new serverCapital[capital];

#define ALL_CAPITAL 3
new const writeCapital[ALL_CAPITAL][2][] = {
	 { "Polska", 	"Warszawa" }
	,{ "Francja", 	"Paryz" }
	,{ "Niemcy", 	"Berlin" }
};	
 
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	register_clcmd("say", "cmdSay");
}

public cmdSay(id){
	if(!is_user_connected(id)) return PLUGIN_HANDLED;
	
	new szMessage[124];
	read_args(szMessage, sizeof( szMessage ) - 1); 
	remove_quotes(szMessage);
	
	if(szMessage[0] == '/'){
		if(equal(szMessage, "/stolica")){
			functionRandomCapital(id);
			return PLUGIN_HANDLED;
		}
		return PLUGIN_CONTINUE;
	}
	
	if(serverCapital[RANDOM_ON]){	
		if(equali(szMessage, writeCapital[serverCapital[RANDOM_ID]][1])){
	
			new nameUser[33];
			get_user_name(id, nameUser, sizeof(nameUser) - 1);
			
			client_print_color(0, id, "^4[%s]^1 Pierwszy przepisal:^3 %s^1 stolice kraju:^3 %s", writeCapital[serverCapital[RANDOM_ID]][1], nameUser, writeCapital[serverCapital[RANDOM_ID]][0]);
			awardCapital(id);
			serverCapital[RANDOM_ON] = false;
			
			return PLUGIN_CONTINUE;
		}
		return PLUGIN_CONTINUE;
	}		
	return PLUGIN_HANDLED;
}

public functionRandomCapital(id){
	if(!has_flag(id, "a")) return;
	if(serverCapital[RANDOM_ON]){
		client_print_color(id, id, "^4[*]^1 Aktualnie jest wylosowana stolica:^3 %s^1 do przepisania!", writeCapital[serverCapital[RANDOM_ID]][0]);
		client_print_color(id, id, "^4[*]^1 Przepisz ja na chacie aby ponownie odpalic losowanie!");
		return;
	}
	serverCapital[RANDOM_ON] = true;
	serverCapital[RANDOM_ID] = random(ALL_CAPITAL);
	client_print_color(0, 0, "^4[*]^1 Wylosowany kraj:^3 %s^4 |^1 Jaka to stolica??", writeCapital[serverCapital[RANDOM_ID]][0]);
	client_print_color(0, 0, "^4[*]^1 Napisz na chacie jako^4 pierwszy^1 aby otrzymac nagrode!");
}

public awardCapital(id){
	/* 
	
	- TUTAJ DODAJESZ CO MA DOSTAC ZA PRZEPISANIE JAKO PIERWSZY. 
	
	*/
}

  • +
  • -
  • 2


#771424 [ROZWIĄZANE] Przeróbka vipa

Napisane przez KoRrNiK on 02.04.2021 11:58

Użyj najnowszej biblioteki csgomod.inc ( Klik )

 

 

Załączone pliki


  • +
  • -
  • 1


#771371 Prośba o przerobienie pluginu

Napisane przez KoRrNiK on 29.03.2021 06:19

Płakać mi się chce jak widzę ten kod :D no ale.. zapomniałeś dodać do CurWeapon jeszcze aby ustawiało Ci deagle.

public CurWeapon(id)
{
	if(!is_user_alive(id))
		return PLUGIN_HANDLED;
	

	SetKnife(id, model_noza[id])
	SetM4A1(id, model_m4[id])
	SetAK47(id, model_ak[id])
	SetAWP(id, model_awp[id])
	SetDeagle(id, model_deagle[id])

	return PLUGIN_HANDLED   

}

  • +
  • -
  • 1


#771308 [ROZWIĄZANE] Problem z kompilacją.

Napisane przez KoRrNiK on 24.03.2021 07:03

Łap 

 

Aby go skompilować potrzebujesz jeszcze biblioteki MuliColors ( Klik

Załączone pliki


  • +
  • -
  • 1


#770991 Ranga Vip

Napisane przez KoRrNiK on 05.03.2021 17:37

Trzymaj.
Wszystko do konfiguracji masz od 17 - 25 linijki.

new const modelNAMETT[]		=	"modelTTVIP";
new const modelNAMECT[]		=	"modelCTVIP";
new const vipFlag[]		=	"q";
new const vipPrefix[]		=	"[Vip]";
new const additionalJump	=	2;
new const additionalMoney	=	2000;
new const additionalHsExp	=	75;
new const additionalExp		=	50;
new const additionalPercentDmg	=	5;

A model musisz wgrać do folderu "../models/player/nazwamodelu/nazwamodelu.mdl"

Nazwa modelu a nazwa folderu musi być taka sama.

Załączone pliki


  • +
  • -
  • 1


#770971 [ROZWIĄZANE] Prośba o przekompilowanie

Napisane przez KoRrNiK on 04.03.2021 18:20

public amxbans_admin_connect(id){
	if(get_user_flags(id) & 34078720 == 34078720){
		client_authorized_vip(id);
	}
}

  • +
  • -
  • 2


#770969 [ROZWIĄZANE] Prośba o SuperVipa na DD2.

Napisane przez KoRrNiK on 04.03.2021 18:10

Łap

Załączone pliki


  • +
  • -
  • 1


#770965 [ROZWIĄZANE] Prośba o SuperVipa na DD2.

Napisane przez KoRrNiK on 04.03.2021 17:36

Trzymaj. 

Załączone pliki


  • +
  • -
  • 1