[Pomoc] Headshot


Započeo Ryan Sanchez, Februar 03, 2012, 21:00:34 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Moja od 0
Detaljan opis problema: Kad opalim sniperom, dodje pickup. Stavite kad se spawna da nema sniper u ruci, i ako mozete popravite bug kad pucam da ne izlazi taj pickup
http://i.imgur.com/0jAsL.jpg
Dio skripte: dole
Neke slike/video za lakse dobivanje pomoci(neobavezno):

#include <a_samp>

#define SERVER_MAX_PLAYERS 20 //Change to max players of your server

//define SHOWPATH if you want the path of bullet to be shown
#define SHOWPATH

new RecentlyShot[SERVER_MAX_PLAYERS];

public OnFilterScriptInit()
{
	print("\n\n__________________________________________________________________");
	print(" Boom Headshot System by Ryan loaded!");
	print(" Copyright Ryan 2010");
	print("__________________________________________________________________\n\n");
	return 1;
}

public OnFilterScriptExit()
{
    print("\n\n__________________________________________________________________");
	print(" Boom Headshot System by Ryan unloaded!");
	print(" Copyright Ryan 2010");
	print("__________________________________________________________________\n\n");
	return 1;
}

public OnPlayerConnect(playerid) {
 	SendClientMessage(playerid, 0xFFFFFFFF, "Dobrodosli na Hard Life RPG/DM Server");
	return 1;
}

public OnPlayerSpawn(playerid)
{
	GivePlayerWeapon(playerid, 0, 0);
	RecentlyShot[playerid] = 0;
	return 1;
}

public OnPlayerUpdate(playerid)
{

	return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	if(newkeys & KEY_FIRE && newkeys & KEY_HANDBRAKE) {
	    if(RecentlyShot[playerid] == 0) {
	        RecentlyShot[playerid] = 1;
	        SetTimerEx("AntiSpam", 1000, false, "d", playerid);
			if(GetPlayerWeapon(playerid) == 34) {
		        new Float:blahx, Float:blahy, Float:blahz;
				HeadshotCheck(playerid, blahx, blahy, blahz);
		        return 1;
		    }
			return 1;
		}
		return 1;
 	}
	return 1;
}

forward AntiSpam(playerid);
public AntiSpam(playerid) {
	RecentlyShot[playerid] = 0;
	return 1;
}

stock PlayerName(playerid) {
	new name[24];
	GetPlayerName(playerid, name, sizeof(name));
	return name;
}

stock HeadshotCheck(playerid, &Float:x, &Float:y, &Float:z)
{
	new Float:fx,Float:fy,Float:fz;
	GetPlayerCameraFrontVector(playerid, fx, fy, fz);

 	new Float:cx,Float:cy,Float:cz;
 	GetPlayerCameraPos(playerid, cx, cy, cz);

	for(new Float:i = 0.0; i < 50; i = i + 0.5)
	{
 		x = fx * i + cx;
		y = fy * i + cy;
		z = fz * i + cz;

		#if defined SHOWPATH
		CreatePickup(1239, 4, x, y, z, -1);
		#endif

		for(new player = 0; player < SERVER_MAX_PLAYERS; player ++)
		{
		    if(IsPlayerConnected(playerid))
		    {
		    	if(player != playerid)
				{
		    		if(GetPlayerSpecialAction(player) == SPECIAL_ACTION_DUCK) //CROUCHING
					{
		        		if(IsPlayerInRangeOfPoint(player, 0.3, x, y, z))
		        		{
		        		    new string[128];
							format(string, sizeof(string), "Headshot: %s was shot to head by %s", PlayerName(player), PlayerName(playerid));
							SendClientMessageToAll(0xFF9900AA, string);

		            		GameTextForPlayer(playerid, "~r~HEADSHOT!", 2000, 6);
		            		GameTextForPlayer(player, "~r~HEADSHOT!", 2000, 6);

		            		SetPlayerHealth(player, 0.0);
		            		CallRemoteFunction("OnPlayerDeath", "ddd", player, playerid, 34);
		        		}
					}
					else //NOT CROUCHING
					{
		    			if(IsPlayerInRangeOfPoint(player, 0.3, x, y, z - 0.7))
						{
		        			new string[128];
							format(string, sizeof(string), "Headshot: %s was shot to head by %s", PlayerName(player), PlayerName(playerid));
							SendClientMessageToAll(0xFF9900AA, string);

							GameTextForPlayer(playerid, "~r~HEADSHOT!", 2000, 6);
							GameTextForPlayer(player, "~r~HEADSHOT!", 2000, 6);

							SetPlayerHealth(player, 0.0);
							CallRemoteFunction("OnPlayerDeath", "ddd", player, playerid, 34);
						}
					}
				}
			}
		}
	}
	return 1;
}
Poslednja Izmena: Februar 03, 2012, 21:01:46 POSLE PODNE od [BF] Ryan Smith

To je koliko vidim takva skripta da ti kreira taj pickup :
CreatePickup(1239, 4, x, y, z, -1);

Pa ja necu da imam pickup....
Nego hocu kad se spawnam da nemam gun u ruci niti pickup kad pucam, al da opet ide Headshot.

EDIT: Pickup sam sklonio, i gunovi odma na spawnu sam sklonio.
Al sad neceHeadshot, cemu je problem ?
Poslednja Izmena: Februar 03, 2012, 21:34:22 POSLE PODNE od [BF] Ryan Smith

Stavi tamo dje ti je to za headshot stavi: 0 umesto 1 ili ako je true stavi false
Mapam besplatno!

Moze mi nek dati Kod tj ispunit ?
Mucim se ceo dan