24.10.2012, 02:56
(
Последний раз редактировалось [JD]BlackFire; 25.10.2012 в 08:59.
)
rMapIcons
Desenvolvi esta include em funзгo de um novo trabalho que estou realizando, que pode ser de grande utilidade para alguns.
O objetivo desta include й 'trapacear' o limite de mapicons de 100 para 400, sendo que cada jogador й independente.
Funзхes:
rSetPlayerMapIcon(playerid, Float: x, Float:y, Float:z, markertype, color, Float:raio);
playerid - ID do jogador que irб adiciona-lo.
Float: x - A coordenada X do MapIcon
Float:y - A coordenada Y do MapIcon
Float:z - A coordenada Z do MapIcon
markertype - ID do нcone para setar.
color - Setar uma cor no mapicon(somente iconid 0).
Float:raio - O raio de visгo que o jogador poderб ter sobre o mapicon.
Retorna o ID do нcone para remover com rRemovePlayerMapIcon
rRemovePlayerMapIcon(playerid, iconid);
playerid - ID do jogador que foi adicionado o mapicon.
iconid - O ID retornado pela funзгo rSetPlayerMapIcon.
rMapIconsUpdate(playerid);
playerid - ID do jogador para atualizar os mapicons.
Esta funзгo retorna o nъmero de mapicons sendo visualizados pelo jogador.
Vнdeo: http://www.youtube.com/watch?v=uIj9q...ature=*********
Crйditos
Cуdigo Fonte: Ivan - Grupo Rocks
Testes: RedKill - iPs Team
Dъvidas e comentбrios sгo bem vindos.
Desenvolvi esta include em funзгo de um novo trabalho que estou realizando, que pode ser de grande utilidade para alguns.
O objetivo desta include й 'trapacear' o limite de mapicons de 100 para 400, sendo que cada jogador й independente.
Funзхes:
rSetPlayerMapIcon(playerid, Float: x, Float:y, Float:z, markertype, color, Float:raio);
playerid - ID do jogador que irб adiciona-lo.
Float: x - A coordenada X do MapIcon
Float:y - A coordenada Y do MapIcon
Float:z - A coordenada Z do MapIcon
markertype - ID do нcone para setar.
color - Setar uma cor no mapicon(somente iconid 0).
Float:raio - O raio de visгo que o jogador poderб ter sobre o mapicon.
Retorna o ID do нcone para remover com rRemovePlayerMapIcon
rRemovePlayerMapIcon(playerid, iconid);
playerid - ID do jogador que foi adicionado o mapicon.
iconid - O ID retornado pela funзгo rSetPlayerMapIcon.
rMapIconsUpdate(playerid);
playerid - ID do jogador para atualizar os mapicons.
Esta funзгo retorna o nъmero de mapicons sendo visualizados pelo jogador.
Vнdeo: http://www.youtube.com/watch?v=uIj9q...ature=*********
pawn Код:
//////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////
///////////// /////////////
///////////// rMAPICONS - MAPICONS STREAMER 0.1 /////////////
///////////// /////////////
///////////// Desenvolvido por [iPs]Ivanzicco / [JD]BlackFire /////////////
///////////// /////////////
///////////// http://www.rocksbrasil.com.br /////////////
///////////// http://www.ips-team.forumeiros.com /////////////
///////////// /////////////
///////////// /////////////
///////////// /////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////
#define MAX_rMAPICONS 400
new rMapIconShowID[MAX_PLAYERS][MAX_rMAPICONS];
new Float:rMapIconPosX[MAX_PLAYERS][MAX_rMAPICONS];
new Float:rMapIconPosY[MAX_PLAYERS][MAX_rMAPICONS];
new Float:rMapIconPosZ[MAX_PLAYERS][MAX_rMAPICONS];
new Float:rMapIconRaio[MAX_PLAYERS][MAX_rMAPICONS];
new rMapIconMarkerType[MAX_PLAYERS][MAX_rMAPICONS];
new rMapIconColor[MAX_PLAYERS][MAX_rMAPICONS];
stock rSetPlayerMapIcon(playerid, Float:x, Float:y, Float:z, markertype, color, Float:raio){
for(new i = 1; i<MAX_rMAPICONS; i++){
if(rMapIconPosX[playerid][i] == 0 && rMapIconPosY[playerid][i] == 0){
rMapIconPosX[playerid][i] = x;
rMapIconPosY[playerid][i] = y;
rMapIconPosZ[playerid][i] = z;
rMapIconRaio[playerid][i] = raio;
rMapIconMarkerType[playerid][i] = markertype;
rMapIconColor[playerid][i] = color;
rMapIconsUpdate(playerid);
return i;
}
}
return false;
}
stock rMapIconsUpdate(playerid){
new Float:x,Float:y,Float:z,mapicons = 1;
GetPlayerPos(playerid,x,y,z);
for(new i = 1; i<MAX_rMAPICONS; i++){
if(rMapIconShowID[playerid][i] > 0){RemovePlayerMapIcon(playerid,rMapIconShowID[playerid][i]);}
}
for(new i = 1; i<MAX_rMAPICONS && mapicons < 100; i++){
if(rMapIconPosX[playerid][i] != 0 || rMapIconPosY[playerid][i] != 0 || rMapIconPosZ[playerid][i] != 0){
if(GetPlayerDistanceFromPoint(playerid,rMapIconPosX[playerid][i],rMapIconPosY[playerid][i],rMapIconPosZ[playerid][i]) <= rMapIconRaio[playerid][i]){
SetPlayerMapIcon(playerid,mapicons,rMapIconPosX[playerid][i],rMapIconPosY[playerid][i],rMapIconPosZ[playerid][i],rMapIconMarkerType[playerid][i],rMapIconColor[playerid][i],MAPICON_GLOBAL);
rMapIconShowID[playerid][i] = mapicons;
mapicons ++;
}
}
}
return mapicons;
}
stock rRemovePlayerMapIcon(playerid, iconid){
rMapIconPosX[playerid][iconid] = 0;
rMapIconPosY[playerid][iconid] = 0;
rMapIconPosZ[playerid][iconid] = 0;
rMapIconRaio[playerid][iconid] = 0;
rMapIconMarkerType[playerid][iconid] = false;
rMapIconColor[playerid][iconid] = false;
RemovePlayerMapIcon(playerid,rMapIconShowID[playerid][iconid]);
rMapIconShowID[playerid][iconid] = 0;
return true;
}
Cуdigo Fonte: Ivan - Grupo Rocks
Testes: RedKill - iPs Team
Dъvidas e comentбrios sгo bem vindos.