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
 

WezZostan. - zdjęcie

WezZostan.

Rejestracja: 04.10.2015
Aktualnie: Nieaktywny
Poza forum Ostatnio: 15.02.2018 21:39
-----

Moje tematy

Odbicie enta od ściany

02.02.2018 17:33

Witam, próbuję dojść do efektu realistycznego odbicia kulki z paintballmoda.

Patrząc na kod podany poniżej wygląda to aktualnie tak: https://iv.pl/images...23538167076.png

Czyli nieważne pod jakim kątem ent uderza w ścianę to i tak odbija się prostopadle do ściany.

Moim celem jest osiągniecie takiego efektu: https://iv.pl/images...97323586857.png

Czyli żeby tor odbicia kuli był zależny od kontu pod jakim uderza on w ścianę.

Próbowałem to robić sam ale nic nie wychodziło, jest ktoś w stanie pomóc bądź nakierować jak to napisać?

public fw_touch(bullet, ent, id)
{
	new class[20];
	pev(bullet, pev_classname, class, 19);
	if (!equali(class, "pbBullet"))
		return FMRES_IGNORED;

	new Float:origin[3], class2[20], owner = pev(bullet, pev_owner), is_ent_alive = is_user_alive(ent);
	pev(ent, pev_classname, class2, 19);
	pev(bullet, pev_origin, origin);

	if (is_ent_alive)
	{
		if (owner == ent || pev(ent, pev_takedamage) == DAMAGE_NO)
			return FMRES_IGNORED;
		if (get_user_team(owner) == get_user_team(ent))
			if (!get_pcvar_num(friendlyfire))
				return FMRES_IGNORED;

		ExecuteHam(Ham_TakeDamage, ent, owner, owner, float(get_pcvar_num(damge)), 4098);
	}

	if (!equali(class, class2))
	{	
		set_pev(bullet, pev_classname, "pbPaint");
		set_pev(bullet, pev_solid, 0);
		set_pev(bullet, pev_waterlevel, 1);
		set_pev(bullet, pev_movetype, MOVETYPE_BOUNCE);
		set_pev(bullet, pev_velocity, Float:{0.0,150.0,0.0});
		//engfunc(EngFunc_SetModel, bullet, "sprites/paintball.spr");

		new a, findpb = 0;
		while (a++ < g_pbcount && !findpb)
			if (g_paintballs[a] == bullet)
				findpb = g_pbstatus[a] = 2;

		remove_task(bullet);
		remove_task(bullet+TASK_PB_RESET);

		if (get_pcvar_num(sound))
		{
			static wav[20];
			formatex(wav, 20, is_ent_alive ? "player/pl_pain%d.wav" : "misc/ag%d.wav", is_ent_alive ? random_num(4,7) : random_num(1,4));
			emit_sound(bullet, CHAN_AUTO, wav, 1.0, ATTN_NORM, 0, PITCH_NORM);
		}

		new bool:valid_surface = (is_ent_alive || containi(class2, "door") != -1) ? false : true;
		if (pev(ent, pev_health) && !is_ent_alive)
		{
			ExecuteHam(Ham_TakeDamage, ent, owner, owner, float(pev(ent, pev_health)), 0);
			valid_surface = false;
		}
		if (valid_surface)
		{
			//paint_splat(bullet);
			set_task(float(get_pcvar_num(blife)), "paint_reset", bullet+TASK_PB_RESET);
		}
		else
			paint_reset(bullet+TASK_PB_RESET);

		return FMRES_HANDLED; 
	}

	return FMRES_IGNORED;
}

BaseBuilder problem z serwerem

20.01.2018 18:12

Przypadkowo temat wysłał mi się dwa razy proszę o usunięcie tego i przepraszam.

BaseBuilder problem z serwerem

20.01.2018 18:12

Witam, wgrałem na swój serwer paczkę BB z tego linku: https://amxx.pl/topi...d-v72-23092014/

niestety mam z nią taki problem, że wyrzuca ona graczy z serwera. A mianowicie gdy kończy się czas budowania wyrzuca wszystkich z komunikatem "Fake players spamming or protocol violation". Próbowałem wgrać ową paczkę na starszym i nowszym silniku i na każdym było tak samo. Zna ktoś może przyczynę tego problemu?

Nie odczytuje danych nvault

23.08.2017 15:10

Mam taki problem, że mam plugin od expienia i zapisuje mi dane do pliku .vault ale przy wejściu na serwer już danych nie odczytuje - lvl jest znowu równy 0. Pomocy :/

public SaveData(id)
{
	if(!g_loaded[id])
		return 1;
	
	new vaultkey[64], vaultdata[256];
	
	format(vaultkey,63,"%s-Jail", gName[id]);
	format(vaultdata,255,"%i %i %i %i %i %i", gExp[id], gLvl[id], gStats[id][0], gStats[id][1], gStats[id][2], gStats[id][3]);
	nvault_set(g_vault, vaultkey, vaultdata);
	
	return 1;
}

public LoadData(id)
{
	new vaultkey[64],vaultdata[256];
	format(vaultkey,63,"%s-Jail", gName[id]);
	format(vaultdata,255,"%i %i %i %i %i %i", gExp[id], gLvl[id], gStats[id][0], gStats[id][1], gStats[id][2], gStats[id][3]);
	nvault_get(g_vault, vaultkey, vaultdata, 255);
	
	new szExp[5], szLvl[5], szStats[4][5];
	parse(vaultdata, szExp, 4, szLvl, 4, szStats[0], 4, szStats[1], 4, szStats[2], 4, szStats[3], 4);
	
	gExp[id] = str_to_num(szExp);
	gLvl[id] = str_to_num(szLvl);
	gStats[id][0] = str_to_num(szStats[0]);
	gStats[id][1] = str_to_num(szStats[1]);
	gStats[id][2] = str_to_num(szStats[2]);
	gStats[id][3] = str_to_num(szStats[3]);
	
	gfPercent[id] = get_percent(id)
	
	g_loaded[id] = true;
	gPoints[id] = 1*gLvl[id] - gStats[id][0] - gStats[id][1] - gStats[id][2] - gStats[id][3];
	
	return 1;
}
public client_authorized(id)
{
	LoadData(id);
	
	return 1;
}

public client_disconnect(id)
{
	SaveData(id);
	
	return 1;
}

Zabawa Berek - bug

01.08.2017 16:11

Witam w zabawie berek występuje taki bug, że jeśli ktoś zginie bo nie zdąży go oddać to jest spoko losuje nowego, ale jeśli ktoś zginie przez "utratę hp" - bo berek z każdym oddaniem zadaje 20HP dmg to wtedy nie losuje nowego berka i jest problem. Jest ktoś w stanie pomóc to naprawić? :)