כמה פונקציות שבניתי .. [אני זה tal332255 מפורום אחר]
בדיקה אם שחקן באיזור מסויים -
PHP Code:
stock isCarInArea(vehicleid, Float:x1, Float:y1, Float:x2, Float:y2)
{
new Float:mx[2], Float:my[2], Float:pos[4];
mx[0] = x1 > x2? x1 : x2, mx[1] = x1 < x2? x1 : x2;
my[0] = y1 > y2? y1 : y2, my[1] = y1 < y2? y1 : y2;
GetVehiclePos(vehicleid, pos[0], pos[1], pos[2],pos[3]);
return pos[0] <= mx[0] && pos[0] >= mx[1] && pos[1] <= my[0] && pos[1] >= my[1]? true : false;
}
שילוב של זווית השחקן ושל שיגור שחקן -
PHP Code:
stock SetPlayerPosX(playerid, Float:x,Float:y,Float:z,Float:a)
{
SetPlayerPos(playerid,x,y,z),SetPlayerFacingAngle(playerid,a);
return 1;
}
שיגור שחקן לאיזור מסויים -
PHP Code:
stock TeleportToArea(playerid, Float:x1,Float:y1,Float:x2,Float:y2,Float:z)
{
new Float:BigX,Float:BigY,Float:SmallX,Float:SmallY;
if(x1 > x2)BigX = x1,SmallX = x2;
else BigX = x2,SmallX = x1;
if(x2 > x1) BigX = x2,SmallX = x1;
else BigX = x1,SmallX = x2;
if(y1 > y2) BigY = y1,SmallY = y2;
else BigY = y2,SmallY = y1;
if(y2 > y1) BigY = y2,SmallY = y1;
else BigY = y1,SmallY = y2;
SetPlayerPos(playerid,floatrandom(BigX - SmallX) + SmallX,floatrandom(BigY - SmallY) + SmallY,z);
return 1;
}
פונקציה נחוצה [לא שלי] -
PHP Code:
forward Float:floatrandom(Float:max);
public Float:floatrandom(Float:max)
{
return floatdiv(float(random(floatround(max * 100000))), 100000.0);
}
בדיקה אם יש עוד מישהו ברכב חוץ מהנהג -
PHP Code:
stock IsAnyPlayerPassenger(vehicleid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
if(IsPlayerConnected(i))
if(GetPlayerState(i) == 3 && GetPlayerVehicleID(i) == vehicleid) return 1;
return 0;
}
השמעת צליל מסויים לכולם -
PHP Code:
stock PlayerPlaySoundAll(id,Float:x,Float:y,Float:z)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
PlayerPlaySound(i,id,x,y,z);
}
}
}
לבדוק אם השם הזה מחובר -
PHP Code:
stock IsNameConnect(name[])
{
for(new i = 0; i <= MAX_PLAYERS; i++)
if(IsPlayerConnected(i) && !strcmp(GetName(i),name,true)) return 1;
return 0;
}
בדיקת האיידי של השחקן לפי שם -
PHP Code:
stock GetIdName(name[])
{
for(new i = 0; i <= MAX_PLAYERS; i++)
if(IsPlayerConnected(i) && !strcmp(GetName(i),name,true)) return i;
return -1;
}
תהנו