01.04.2014, 14:10
Hello all. I have a problem with houses. When I create a house, and when I get into it, I'am not in interior. If you understand me.
/enter and /createhouse command
CreateHouse stock:
/enter and /createhouse command
Код:
YCMD:enter(playerid, params[], help) { for(new k=1; k<houses; k++) { if(IsPlayerInRangeOfPoint(playerid, 5.0, InformacijeKuce[k][EnterX], InformacijeKuce[k][EnterY], InformacijeKuce[k][EnterZ])) { SetPlayerVirtualWorld(playerid, InformacijeKuce[k][kVW]); SetPlayerInterior(playerid, InformacijeKuce[k][kInterier]); SetPlayerPos(playerid, InformacijeKuce[k][ExitX], InformacijeKuce[k][ExitX], InformacijeKuce[k][ExitX]); } } return 1; } YCMD:createhouse(playerid, params[], help) { #pragma unused help new id, cijena, level, int, vw, kb, vr, Float:PosX, Float:PosY, Float:PosZ, str[128], string[64]; if(!(InformacijeIgraca[playerid][pAdmin] >= 3)) return scm(playerid,color_red, "[GREЉKA]"col_white" - Niste autorizirani za koriљtenje ove komande."); if(sscanf(params, "iiiiiii", id, cijena, level, int, vw, kb, vr)) { scm(playerid, color_red, "[GREЉKA]"col_white" - Koriљtenje komande: /createhouse [ID] [Cijena] [Level] [Interijer] [Virtual World] [Kućni broj] [Vrsta]"); scm(playerid, color_white, "- "col_skyblue"Pomoć pri biranju interijera."); scm(playerid, color_white, "- Interijeri za male kuće: 1, 5, 10."); scm(playerid, color_white, "- Interijeri za srednje kuće: 2, 3, 4, 5, 6, 9, 10, 15."); scm(playerid, color_white, "- Interijeri za vile(veće kuće): 5, 6, 12"); return 1; } if(id >= houses) return scm(playerid, color_red, "[GREЉKA]"col_white" - Ћeljeni ID kuće prelazi "#houses". Smanji ID, ili prijavi adminu da je broj kuća preљao 500."); format(string, sizeof(string), kuce, id); if(fexist(string)) return scm(playerid, color_red, "[GREЉKA]"col_white" - Kuća pod tim IDom već postoji."); GetPlayerPos(playerid, PosX, PosY, PosZ); CreateHouse(id, cijena, level, int, vw, kb, vr, PosX, PosY, PosZ); format(str, sizeof(str), "Uspijeљno ste kreirali kuću pod IDom %d.", id); scm(playerid, color_admini, str); return 1; }
Код:
stock CreateHouse(id, cijena, level, int, vw, kb, vr, Float:PosX, Float:PosY, Float:PosZ) { new kFile[32], string[200], str[48], zone[48]; new rand = random(5); GetHouse2DZone(id, zone, 30); format(kFile, 35, kuce, id); new INI:File = INI_Open(kFile); { INI_WriteString(File, "Vlasnik", "Drћava"); INI_WriteFloat(File, "EnterX", PosX); INI_WriteFloat(File, "EnterY", PosY); INI_WriteFloat(File, "EnterZ", PosZ); if(vr == 1 && int == 1) { INI_WriteFloat(File, "ExitX", 222.9252); INI_WriteFloat(File, "ExitY", 1288.3846); INI_WriteFloat(File, "ExitZ", 1082.1406); } else if(vr == 1 && int == 5) { INI_WriteFloat(File, "ExitX", 2233.8718); INI_WriteFloat(File, "ExitY", -1113.8929); INI_WriteFloat(File, "ExitZ", 1050.8828); } else if(vr == 1 && int == 10) { INI_WriteFloat(File, "ExitX", 2260.5527); INI_WriteFloat(File, "ExitY", -1135.9375); INI_WriteFloat(File, "ExitZ", 1050.6328); } else if(vr == 2 && int == 9) { if(rand == 1) { INI_WriteFloat(File, "ExitX", 2317.6772); INI_WriteFloat(File, "ExitY", -1025.6970); INI_WriteFloat(File, "ExitZ", 1050.2178); } else if(rand == 2) { INI_WriteFloat(File, "ExitX", 83.1032); INI_WriteFloat(File, "ExitY", 1323.4178); INI_WriteFloat(File, "ExitZ", 1083.8594); } } else if(vr == 2 && int == 3) { if(rand == 1) { INI_WriteFloat(File, "ExitX", 235.1090); INI_WriteFloat(File, "ExitY", 1189.7700); INI_WriteFloat(File, "ExitZ", 1080.2578); } else if(rand == 2) { INI_WriteFloat(File, "ExitX", 2496.0549); INI_WriteFloat(File, "ExitY", -1693.9139); INI_WriteFloat(File, "ExitZ", 1014.7422); } } else if(vr == 2 && int == 2) { if(rand == 1) { INI_WriteFloat(File, "ExitX", 225.7570); INI_WriteFloat(File, "ExitY", 1240.0000); INI_WriteFloat(File, "ExitZ", 1082.1406); } else if(rand == 2) { INI_WriteFloat(File, "ExitX", 447.0868); INI_WriteFloat(File, "ExitY", 1399.6906); INI_WriteFloat(File, "ExitZ", 1084.3047); } } else if(vr == 2 && int == 15) { if(rand == 1) { INI_WriteFloat(File, "ExitX", 295.2662); INI_WriteFloat(File, "ExitY", 1473.4937); INI_WriteFloat(File, "ExitZ", 1080.2578); } else if(rand == 2) { INI_WriteFloat(File, "ExitX", -284.8645); INI_WriteFloat(File, "ExitY", 1471.1700); INI_WriteFloat(File, "ExitZ", 1084.3750); } } else if(vr == 2 && int == 4) { if(rand == 1) { INI_WriteFloat(File, "ExitX", 260.9357); INI_WriteFloat(File, "ExitY", 1285.9032); INI_WriteFloat(File, "ExitZ", 1080.2578); } else if(rand == 2) { INI_WriteFloat(File, "ExitX", 221.9369); INI_WriteFloat(File, "ExitY", 1141.4115); INI_WriteFloat(File, "ExitZ", 1082.6094); } else if(rand == 3) { INI_WriteFloat(File, "ExitX", -262.1759); INI_WriteFloat(File, "ExitY", 1456.6158); INI_WriteFloat(File, "ExitZ", 1084.3672); } } else if(vr == 2 && int == 10) { INI_WriteFloat(File, "ExitX", 24.3769); INI_WriteFloat(File, "ExitY", 1341.1829); INI_WriteFloat(File, "ExitZ", 1084.3750); } else if(vr == 2 && int == 5) { INI_WriteFloat(File, "ExitX", 22.9572); INI_WriteFloat(File, "ExitY", 1404.5542); INI_WriteFloat(File, "ExitZ", 1084.4297); } else if(vr == 2 && int == 6) { INI_WriteFloat(File, "ExitX", -68.7530); INI_WriteFloat(File, "ExitY", 1353.1779); INI_WriteFloat(File, "ExitZ", 1080.2109); } else if(vr == 3 && int == 5) { INI_WriteFloat(File, "ExitX", 228.3240); INI_WriteFloat(File, "ExitY", 1114.1727); INI_WriteFloat(File, "ExitZ", 1080.9922); } else if(vr == 3 && int == 12) { INI_WriteFloat(File, "ExitX", 2324.3933); INI_WriteFloat(File, "ExitY", -1148.5806); INI_WriteFloat(File, "ExitZ", 1050.7101); } else if(vr == 3 && int == 5) { INI_WriteFloat(File, "ExitX", 140.3611); INI_WriteFloat(File, "ExitY", 1367.5953); INI_WriteFloat(File, "ExitZ", 1083.8617); } else if(vr == 3 && int == 6) { INI_WriteFloat(File, "ExitX", 234.3069); INI_WriteFloat(File, "ExitY", 1064.7493); INI_WriteFloat(File, "ExitZ", 1084.2108); } INI_WriteInt(File, "Cijena renta", 0); INI_WriteInt(File, "Zaključana", 1); INI_WriteInt(File, "Sef(droga1)", 0); INI_WriteInt(File, "Sef(droga2)", 0); INI_WriteInt(File, "Sef(droga3)", 0); INI_WriteInt(File, "Sef(droga4)", 0); INI_WriteInt(File, "Sef(droga5)", 0); INI_WriteInt(File, "Kupljena", 0); INI_WriteInt(File, "Interijer", int); INI_WriteInt(File, "Sef(oruћje1)", 0); INI_WriteInt(File, "Sef(oruћje2)", 0); INI_WriteInt(File, "Sef(oruћje3)", 0); INI_WriteInt(File, "Sef(oruћje4)", 0); INI_WriteInt(File, "Sef(oruћje5)", 0); INI_WriteInt(File, "Cijena", cijena); format(str,sizeof(str),"%s %d", zone, kb); INI_WriteString(File, "Adresa", str); INI_WriteInt(File, "Level", level); INI_WriteInt(File, "Rent", 0); INI_WriteInt(File, "Sef", 0); INI_WriteInt(File, "Virtual World", vw); INI_Close(File); format(InformacijeKuce[id][kOwner],48,"Drћava"); InformacijeKuce[id][EnterX] = PosX; InformacijeKuce[id][EnterY] = PosY; InformacijeKuce[id][EnterZ] = PosZ; if(vr == 1 && int == 1) { InformacijeKuce[id][ExitX] = 222.9252; InformacijeKuce[id][ExitY] = 1288.3846; InformacijeKuce[id][ExitZ] = 1082.1406; } else if(vr == 1 && int == 5) { InformacijeKuce[id][ExitX] = 2233.8718; InformacijeKuce[id][ExitY] = -1113.8929; InformacijeKuce[id][ExitZ] = 1050.8828; } else if(vr == 1 && int == 10) { InformacijeKuce[id][ExitX] = 2260.5527; InformacijeKuce[id][ExitY] = -1135.9375; InformacijeKuce[id][ExitZ] = 1050.6328; } else if(vr == 2 && int == 9) { if(rand == 1) { InformacijeKuce[id][ExitX] = 2317.6772; InformacijeKuce[id][ExitY] = -1025.6970; InformacijeKuce[id][ExitZ] = 1050.2178; } else if(rand == 2) { InformacijeKuce[id][ExitX] = 83.1032; InformacijeKuce[id][ExitY] = 1323.4178; InformacijeKuce[id][ExitZ] = 1083.8594; } } else if(vr == 2 && int == 3) { if(rand == 1) { InformacijeKuce[id][ExitX] = 235.1090; InformacijeKuce[id][ExitY] = 1189.7700; InformacijeKuce[id][ExitZ] = 1080.2578; } else if(rand == 2) { InformacijeKuce[id][ExitX] = 2496.0549; InformacijeKuce[id][ExitY] = -1693.9139; InformacijeKuce[id][ExitZ] = 1014.7422; } } else if(vr == 2 && int == 2) { if(rand == 1) { InformacijeKuce[id][ExitX] = 225.7570; InformacijeKuce[id][ExitY] = 1240.0000; InformacijeKuce[id][ExitZ] = 1082.1406; } else if(rand == 2) { InformacijeKuce[id][ExitX] = 447.0868; InformacijeKuce[id][ExitY] = 1399.6906; InformacijeKuce[id][ExitZ] = 1084.3047; } } else if(vr == 2 && int == 15) { if(rand == 1) { InformacijeKuce[id][ExitX] = 295.2662; InformacijeKuce[id][ExitY] = 1473.4937; InformacijeKuce[id][ExitZ] = 1080.2578; } else if(rand == 2) { InformacijeKuce[id][ExitX] = -284.8645; InformacijeKuce[id][ExitY] = 1471.1700; InformacijeKuce[id][ExitZ] = 1084.3750; } } else if(vr == 2 && int == 4) { if(rand == 1) { InformacijeKuce[id][ExitX] = 260.9357; InformacijeKuce[id][ExitY] = 1285.9032; InformacijeKuce[id][ExitZ] = 1080.2578; } else if(rand == 2) { InformacijeKuce[id][ExitX] = 221.9369; InformacijeKuce[id][ExitY] = 1141.4115; InformacijeKuce[id][ExitZ] = 1082.6094; } else if(rand == 3) { InformacijeKuce[id][ExitX] = -262.1759; InformacijeKuce[id][ExitY] = 1456.6158; InformacijeKuce[id][ExitZ] = 1084.3672; } } else if(vr == 2 && int == 10) { InformacijeKuce[id][ExitX] = 24.3769; InformacijeKuce[id][ExitY] = 1341.1829; InformacijeKuce[id][ExitZ] = 1084.3750; } else if(vr == 2 && int == 5) { InformacijeKuce[id][ExitX] = 22.9572; InformacijeKuce[id][ExitY] = 1404.5542; InformacijeKuce[id][ExitZ] = 1084.4297; } else if(vr == 2 && int == 6) { InformacijeKuce[id][ExitX] = -68.7530; InformacijeKuce[id][ExitY] = 1353.1779; InformacijeKuce[id][ExitZ] = 1080.2109; } else if(vr == 3 && int == 5) { InformacijeKuce[id][ExitX] = 228.3240; InformacijeKuce[id][ExitY] = 1114.1727; InformacijeKuce[id][ExitZ] = 1080.9922; } else if(vr == 3 && int == 12) { InformacijeKuce[id][ExitX] = 2324.3933; InformacijeKuce[id][ExitY] = -1148.5806; InformacijeKuce[id][ExitZ] = 1050.7101; } else if(vr == 3 && int == 5) { InformacijeKuce[id][ExitX] = 140.3611; InformacijeKuce[id][ExitY] = 1367.5953; InformacijeKuce[id][ExitZ] = 1083.8617; } else if(vr == 3 && int == 6) { InformacijeKuce[id][ExitX] = 234.3069; InformacijeKuce[id][ExitY] = 1064.7493; InformacijeKuce[id][ExitZ] = 1084.2108; } InformacijeKuce[id][kCijenaRenta] = 0; InformacijeKuce[id][kZakljucana] = 1; InformacijeKuce[id][kDrugSlot1] = 0; InformacijeKuce[id][kDrugSlot2] = 0; InformacijeKuce[id][kDrugSlot3] = 0; InformacijeKuce[id][kDrugSlot4] = 0; InformacijeKuce[id][kDrugSlot5] = 0; InformacijeKuce[id][kKupljena] = 0; InformacijeKuce[id][kInterier] = int; InformacijeKuce[id][kGunSlot1] = 0; InformacijeKuce[id][kGunSlot2] = 0; InformacijeKuce[id][kGunSlot3] = 0; InformacijeKuce[id][kGunSlot4] = 0; InformacijeKuce[id][kGunSlot5] = 0; InformacijeKuce[id][kCijena] = cijena; format(InformacijeKuce[id][kAdresa],32,"%s %d", zone, kb); InformacijeKuce[id][kLevel] = level; InformacijeKuce[id][kRent] = 0; InformacijeKuce[id][kSef] = 0; InformacijeKuce[id][kVW] = vw; InformacijeKuce[id][kPickup] = CreateDynamicPickup(1273, 23, PosX,PosY,PosZ,-1,-1,-1,100.0); format(string,sizeof(string),""col_kuce"Vlasnik: Drћava.\n"col_kuce"Cijena: $%d.\n"col_kuce"Level potreban za kupnju: %d.\n"col_kuce"Adresa: %s %d\n"col_kuce"Kucajte /buyhouse da kupite.", cijena, level, zone, kb); InformacijeKuce[id][kLabel] = CreateDynamic3DTextLabel(string, 0xFFFFFF, PosX,PosY,PosZ, 100, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, -1, 100); } }