I have add house icon to my game mode with Minimapstreamer, i have used the code of a pen lv with 34 houses and i add more 34 but the new icons dont apears in the new houses only in the original 34.
Код:
#include <MapIconStreamer>
/*----------------------------Minimapstreamer---------------------------------------*/
#define MAX_ACTIVE_MM_ICONS 70
#define DEFAULT_SPAWN_DIST 300
#define B_LIMIT 2000
#define V_LIMIT 701
forward MapIconStreamer();
forward minimapstreamer();
new MMstreamcount[MAX_PLAYERS];
public minimapstreamer()
{
for(new j = 0;j<MAX_PLAYERS;j++) {
if(IsPlayerConnected(j)) {
for(new K = 1;K<B_LIMIT;K++) {
if(MapIconInfo[K][mvalid] == 1) {
if(MIactive[j][K] == 0) {
if(MMstreamcount[j] < MAX_ACTIVE_MM_ICONS) {
if(IsPlayerClose(j,MapIconInfo[K][mx_spawn],MapIconInfo[K][my_spawn],MapIconInfo[K][mz_spawn],MapIconInfo[K][mspawndist]) == 1) {
SetPlayerMapIcon(j,MIidnum[j][K],MapIconInfo[K][mx_spawn],MapIconInfo[K][my_spawn],MapIconInfo[K][mz_spawn],MapIconInfo[K][mmodel],1);
MMstreamcount[j]++;
MIactive[j][K] = 1;
}
}
}
else if(IsPlayerClose(j,MapIconInfo[K][mx_spawn],MapIconInfo[K][my_spawn],MapIconInfo[K][mz_spawn],MapIconInfo[K][mspawndist]) == 0) {
RemovePlayerMapIcon(j,MIidnum[j][K]);
MIactive[j][K] = 0;
MMstreamcount[j]--;
}
}
}
}
}
}
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(HouseInfo[h][hOwned] == 0)
{
AddStaticPickup(1273, 2, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]);
CreateStreamMapIcon(31,HouseInfo[h][hEntrancex],HouseInfo[h][hEntrancey],HouseInfo[h][hEntrancez],250);
pickups++;
}
if(HouseInfo[h][hOwned] == 1)
{
AddStaticPickup(1239, 2, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]);
CreateStreamMapIcon(32,HouseInfo[h][hEntrancex],HouseInfo[h][hEntrancey],HouseInfo[h][hEntrancez],250);
pickups++;
}
}
SetTimer("minimapstreamer",500,1);
stock CreateStreamMapIcon(markermodel,Float:x,Float:y,Float:z,Float:spawn_distance)
{
for(new i = 1;i<B_LIMIT;i++) {
if(MapIconInfo[i][mvalid] == 0) {
MapIconInfo[i][mmodel] = markermodel;
for(new j=0;j<MAX_PLAYERS;j++) {
MIidnum[j][i] = i;
}
MapIconInfo[i][mx_spawn] = x;
MapIconInfo[i][my_spawn] = y;
MapIconInfo[i][mz_spawn] = z;
MapIconInfo[i][mspawndist] = spawn_distance;
MapIconInfo[i][mvalid] = 1;
return i;
}
}
return 0;
}