14.06.2012, 16:23
Hi,
Problem is that NPC disappear (no disconnects) after right after player spawn. No, I dont have any login system. Using 0.3e, and granlarc npcs in my own gamemode. NPC Spawns at Onplayerspawn.
Is this bug or what I can do for it? Filterscripts used ferriswheel cargoship gl_property pirateship. Those 0.3e. maxnpc 100 and maxplayers 30. Does maxplayers affect to this?
Problem is that NPC disappear (no disconnects) after right after player spawn. No, I dont have any login system. Using 0.3e, and granlarc npcs in my own gamemode. NPC Spawns at Onplayerspawn.
Is this bug or what I can do for it? Filterscripts used ferriswheel cargoship gl_property pirateship. Those 0.3e. maxnpc 100 and maxplayers 30. Does maxplayers affect to this?
Code:
public OnPlayerSpawn(playerid) { // Show clock TextDrawShowForPlayer(playerid, RealTimeClock); gettime(hour, minute, seconda); // Load NPCs if(IsPlayerNPC(playerid)) { new npcname[MAX_PLAYER_NAME]; GetPlayerName(playerid, npcname, sizeof(npcname)); if(!strcmp(npcname,"LSRuokalaBottiA",true)) { SetPlayerSkin(playerid, 205); SetPlayerColor(playerid, 0xFFFFFF00); return 1; } if(!strcmp(npcname, "LSRuokalaBottiB", true)) { SetPlayerSkin(playerid, 205); SetPlayerColor(playerid, 0xFFFFFF00); return 1; } if(!strcmp(npcname, "LSRuokalaBottiC", true)) { SetPlayerSkin(playerid, 205); SetPlayerColor(playerid, 0xFFFFFF00); return 1; } if(!strcmp(npcname, "LSRuokalaBottiD", true)) { SetPlayerSkin(playerid, 270); SetPlayerColor(playerid, 0xFFFFFF00); return 1; } if(!strcmp(npcname, "LSRuokalaBottiE", true)) { SetPlayerSkin(playerid, 270); SetPlayerColor(playerid, 0xFFFFFF00); return 1; } if(!strcmp(npcname, "TrainDriverLV", true)) { SetPlayerSkin(playerid, 255); PutPlayerInVehicle(playerid, lvtrain, 0); SetVehicleParamsEx(lvtrain, 1, 1, 0, 0, 0, 0, 0); SetPlayerColor(playerid, 0xFFFFFFFF); return 1; } if(!strcmp(npcname, "TrainDriverSF", true)) { SetPlayerSkin(playerid, 255); PutPlayerInVehicle(playerid, sftrain, 0); SetVehicleParamsEx(sftrain, 1, 1, 0, 0, 0, 0, 0); SetPlayerColor(playerid, 0xFFFFFFFF); return 1; } if(!strcmp(npcname, "TrainDriverLS", true)) { SetPlayerSkin(playerid, 255); PutPlayerInVehicle(playerid, lstrain, 0); SetVehicleParamsEx(lstrain, 1, 1, 0, 0, 0, 0, 0); SetPlayerColor(playerid, 0xFFFFFFFF); return 1; } if(!strcmp(npcname, "PilotLV", true)) { SetPlayerSkin(playerid, 255); PutPlayerInVehicle(playerid, lvplane, 0); SetVehicleParamsEx(lvplane, 1, 1, 0, 0, 0, 0, 0); SetPlayerColor(playerid, 0xFFFFFFFF); return 1; } if(!strcmp(npcname, "PilotSF", true)) { SetPlayerSkin(playerid, 255); PutPlayerInVehicle(playerid, sfplane, 0); SetVehicleParamsEx(sfplane, 1, 1, 0, 0, 0, 0, 0); SetPlayerColor(playerid, 0xFFFFFFFF); return 1; } if(!strcmp(npcname, "PilotLS", true)) { SetPlayerSkin(playerid, 255); PutPlayerInVehicle(playerid, lsplane, 0); SetVehicleParamsEx(lsplane, 1, 1, 0, 0, 0, 0, 0); SetPlayerColor(playerid, 0xFFFFFFFF); return 1; } if(!strcmp(npcname, "BottiZ", true)) { SetPlayerSkin(playerid, 255); SetVehicleParamsEx(aikyliltakorjaamol, 1, 1, 0, 0, 0, 0, 0); PutPlayerInVehicle(playerid, aikyliltakorjaamol, 0); return 1; } } // Load Player new file[125]; new string[125]; format(file, sizeof(file), "users/%s.ini", RPN(playerid)); uData[playerid][E_USER_DATA_MONEY] = dini_Int(file, "money"); uData[playerid][E_USER_DATA_BANK] = dini_Int(file, "bank"); uData[playerid][E_USER_DATA_PAYS] = dini_Int(file, "pays"); uData[playerid][E_USER_DATA_FINES] = dini_Int(file, "fines"); uData[playerid][E_USER_DATA_CRIMINALS] = dini_Int(file, "criminals"); uData[playerid][E_USER_DATA_WANTED] = dini_Int(file, "wanted"); uData[playerid][E_USER_DATA_ACLEVEL] = dini_Int(file, "aclevel"); uData[playerid][E_USER_DATA_WORKID] = dini_Int(file, "workid"); uData[playerid][E_USER_DATA_SWORKID] = dini_Int(file, "sworkid"); uData[playerid][E_USER_DATA_DRIVING] = dini_Int(file, "driving"); uData[playerid][E_USER_DATA_PAIDFLICENCE] = dini_Int(file, "paidfdlicence"); uData[playerid][E_USER_DATA_LOTTOWON] = dini_Int(file, "lottowon"); uData[playerid][E_USER_DATA_LOTTOWONAMOUNT] = dini_Int(file, "lottowonamount"); uData[playerid][E_USER_DATA_Hx] = dini_Float(file, "hx"); uData[playerid][E_USER_DATA_Hy] = dini_Float(file, "hy"); uData[playerid][E_USER_DATA_Hz] = dini_Float(file, "hz"); uData[playerid][E_USER_DATA_Ha] = dini_Float(file, "ha"); SetPlayerHealth(playerid, 100.0); SetPlayerInterior(playerid, 0); SetPlayerArmour(playerid, 100.0); SetPlayerPos(playerid, uData[playerid][E_USER_DATA_Hx], uData[playerid][E_USER_DATA_Hy], uData[playerid][E_USER_DATA_Hz]); CreateDynamicMapIcon(uData[playerid][E_USER_DATA_Hx], uData[playerid][E_USER_DATA_Hy], uData[playerid][E_USER_DATA_Hz], 32, -1, -1, -1, -1, 100.0); ResetPlayerMoney(playerid); GivePlayerMoney(playerid, uData[playerid][E_USER_DATA_MONEY]); SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,200); SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,200); SetPlayerSkin(playerid, GetPlayerSkin(playerid)); if(uData[playerid][E_USER_DATA_LOTTOWON] == 1) { format(string, sizeof(string), "kk", RPN(playerid), uData[playerid][E_USER_DATA_LOTTOWONAMOUNT]); SendClientMessage(playerid, COLOR_GREEN, "kk"); SendClientMessageToAll(COLOR_YELLOW, string); } if(uData[playerid][E_USER_DATA_WANTED] > 0) { SetPlayerWantedLevel(playerid, uData[playerid][E_USER_DATA_WANTED]); PlayCrimeReportForPlayer(playerid, playerid, 10); format(string, sizeof(string), "kk", RPN(playerid), uData[playerid][E_USER_DATA_CRIMINALS]); SendClientMessage(playerid, COLOR_RED, "kk SendClientMessageToAll(COLOR_WHITE, string); } return 1; }