_Dizel_
Дебютант
Помогоите с переводом на dcmd
Код:
COMMAND:createhouse(playerid, params[])
{
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (INT_CheckPlayerAdminLevel(playerid, 5) == 0) return 0;
new HPrice, MaxLevel, HouseID;
if (GetPlayerVehicleSeat(playerid) == -1)
{
if (sscanf(params, "ii", HPrice, MaxLevel)) SendClientMessage(playerid, 0xFFFFFFFF, "Èñïîëüçóéòå: \"/createhouse [Öåíà] [level]\"");
else
{
if ((MaxLevel >= 1) && (MaxLevel <= 10))
{
for (HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
if (!IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
break;
if (!IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
{
new Float:x, Float:y, Float:z, Msg[128];
GetPlayerPos(playerid, x, y, z);
AHouseData[HouseID][Owned] = false;
AHouseData[HouseID][Owner] = 0;
AHouseData[HouseID][HouseX] = x;
AHouseData[HouseID][HouseY] = y;
AHouseData[HouseID][HouseZ] = z;
AHouseData[HouseID][HouseLevel] = 1;
AHouseData[HouseID][HouseMaxLevel] = MaxLevel;
AHouseData[HouseID][HousePrice] = HPrice;
AHouseData[HouseID][HouseOpened] = false;
AHouseData[HouseID][Insurance] = false;
AHouseData[HouseID][StaticHouse] = false;
AHouseData[HouseID][CarSlots] = 3;
House_UpdateEntrance(HouseID);
HouseFile_Save(HouseID);
format(Msg, 128, "{00FF00}Âû óñïåøíî ñîçäàëè äîì ñ ID: {FFFF00}%i", HouseID);
SendClientMessage(playerid, 0xFFFFFFFF, Msg);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Ìàêñèìàëüíîå êîëè÷åñòâî äîìîâ áûëî äîñòèãíóòî");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû äîëæíû èñïîëüçîâàòü max-óðîâåíü îò 1 äî 10");
}
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû äîëæíû áûòü íå â Àâòî, ÷òîáû ñîçäàòü äîì");
return 1;
}
COMMAND:createstatichouse(playerid, params[])
{
new HPrice, Carslots, HouseID, Interior;
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (INT_CheckPlayerAdminLevel(playerid, 5) == 0) return 0;
if (GetPlayerVehicleSeat(playerid) == -1)
{
if (sscanf(params, "iii", HPrice, Carslots, Interior)) SendClientMessage(playerid, 0xFFFFFFFF, "Èñïîëüçóéòå: \"/createstatichouse <price> <Carslots (1-10)> <Interior (1-10)>\"");
else
{
if ((Carslots >= 2) && (Carslots <= 10))
{
if ((Interior >= 1) && (Interior <= 10))
{
for (HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
if (!IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
break;
if (!IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
{
new Float:x, Float:y, Float:z, Msg[128];
GetPlayerPos(playerid, x, y, z);
AHouseData[HouseID][Owned] = false;
AHouseData[HouseID][HouseX] = x;
AHouseData[HouseID][HouseY] = y;
AHouseData[HouseID][HouseZ] = z;
AHouseData[HouseID][HouseLevel] = Interior;
AHouseData[HouseID][HouseMaxLevel] = Interior;
AHouseData[HouseID][HousePrice] = HPrice;
AHouseData[HouseID][HouseOpened] = false;
AHouseData[HouseID][Insurance] = false;
AHouseData[HouseID][StaticHouse] = true;
AHouseData[HouseID][CarSlots] = Carslots;
House_UpdateEntrance(HouseID);
HouseFile_Save(HouseID);
format(Msg, 128, "{00FF00}You've succesfully created a static house with ID: {FFFF00}%i", HouseID);
SendClientMessage(playerid, 0xFFFFFFFF, Msg);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}The maximum amount of houses has been reached");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}You have to use an interior-id from 1 to 10");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}You have to use a max amount of carslots from 1 to 10");
}
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}You must be on foot to create a house");
return 1;
}
COMMAND:delhouse(playerid, params[])
{
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (INT_CheckPlayerAdminLevel(playerid, 5) == 0) return 0;
new file[100], Msg[128], Name[24];
if (GetPlayerVehicleSeat(playerid) == -1)
{
for (new HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
if (IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
{
if (IsPlayerInRangeOfPoint(playerid, 2.5, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
{
if (AHouseData[HouseID][Owned] == true)
{
for (new pid; pid < MAX_PLAYERS; pid++)
{
if (INT_IsPlayerLoggedIn(playerid) == 1)
{
GetPlayerName(pid, Name, sizeof(Name));
if (strcmp(AHouseData[HouseID][Owner], Name, false) == 0)
{
format(Msg, 128, "{FF0000}Âàø äîì{FFFF00}\"%s\"{FF0000} óäîëÿåòñÿ", AHouseData[HouseID][HouseName]);
SendClientMessage(pid, 0xFFFFFFFF, Msg);
for (new HouseSlot; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
if (APlayerData[pid][Houses][HouseSlot] == HouseID)
APlayerData[pid][Houses][HouseSlot] = 0;
break;
}
}
}
}
House_RemoveVehicles(HouseID);
AHouseData[HouseID][Owned] = false;
AHouseData[HouseID][Owner] = 0;
AHouseData[HouseID][HouseName] = 0;
AHouseData[HouseID][Insurance] = false;
AHouseData[HouseID][HouseX] = 0.0;
AHouseData[HouseID][HouseY] = 0.0;
AHouseData[HouseID][HouseZ] = 0.0;
AHouseData[HouseID][HouseLevel] = 0;
AHouseData[HouseID][HouseMaxLevel] = 0;
AHouseData[HouseID][HousePrice] = 0;
AHouseData[HouseID][HouseOpened] = false;
AHouseData[HouseID][StaticHouse] = false;
AHouseData[HouseID][CarSlots] = 0;
DestroyDynamicPickup(AHouseData[HouseID][PickupID]);
DestroyDynamicMapIcon(AHouseData[HouseID][MapIconID]);
DestroyDynamic3DTextLabel(AHouseData[HouseID][DoorText]);
AHouseData[HouseID][PickupID] = 0;
AHouseData[HouseID][MapIconID] = 0;
format(file, sizeof(file), HouseFile, HouseID);
if (fexist(file))
fremove(file);
format(Msg, 128, "{00FF00}Äîì ñ ID: {FFFF00}%i {00FF00}óñïåøíî óäàë¸í", HouseID);
SendClientMessage(playerid, 0xFFFFFFFF, Msg);
return 1;
}
}
}
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Íåòó äîìà, ÷òîáû óäàëèòü");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû äîëæíû áûòü íå â Àâòî, ÷òîáû ñîçäàòü äîì");
return 1;
}
COMMAND:buyhouse(playerid, params[])
{
new Msg[128];
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (GetPlayerVehicleSeat(playerid) == -1)
{
for (new HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
if (IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
{
if (IsPlayerInRangeOfPoint(playerid, 2.5, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
{
if (AHouseData[HouseID][Owned] == false)
{
if (INT_GetPlayerMoney(playerid) >= AHouseData[HouseID][HousePrice])
House_SetOwner(playerid, HouseID);
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû íå ìîæåòå ñåáå ïîçâîëèòü ýòîò äîì");
}
else
{
format(Msg, 128, "{FF0000}Ýòîò äîì óæå ïðèíàäëåæèò {FFFF00}%s", AHouseData[HouseID][Owner]);
SendClientMessage(playerid, 0xFFFFFFFF, Msg);
}
return 1;
}
}
}
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}×òîáû êóïèòü äîì, âû äîëæíû áûòü ðÿäîì ñ äîìîì");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû íå ìîæåòå êóïèòü äîì, êîãäà âû íàõîäèòåñü âíóòðè àâòîìîáèëÿ");
return 1;
}
COMMAND:enter(playerid, params[])
{
new HouseID, IntID;
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (GetPlayerVehicleSeat(playerid) == -1)
{
for (HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
if (IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
{
if (IsPlayerInRangeOfPoint(playerid, 2.5, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
{
if (AHouseData[HouseID][HouseOpened] == false)
{
if (House_PlayerIsOwner(playerid, HouseID) == 0)
{
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Ýòîò äîì íå ÿâëÿåòñÿ îòêðûòûì äëÿ îáùåñòâåííîñòè, âû íå ìîæåòå â íåãî âîéòè");
return 1;
}
}
IntID = AHouseData[HouseID][HouseLevel];
SetPlayerVirtualWorld(playerid, 5000 + HouseID);
SetPlayerInterior(playerid, AHouseInteriors[IntID][InteriorID]);
SetPlayerPos(playerid, AHouseInteriors[IntID][IntX], AHouseInteriors[IntID][IntY], AHouseInteriors[IntID][IntZ]);
APlayerData[playerid][CurrentHouse] = HouseID;
SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Èñïîëüçóéòå: {FFFF00}/hm{00FF00} ÷òîáû èçìåíèòü ïàðàìåòðû âàøåãî äîìà");
return 1;
}
}
}
}
return 0;
}
COMMAND:hm(playerid, params[])
{
new OptionsList[200], DialogTitle[200], HouseID;
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
HouseID = APlayerData[playerid][CurrentHouse];
if (HouseID != 0)
{
format(DialogTitle, sizeof(DialogTitle), "Ìåíþ äîìà %s", AHouseData[HouseID][HouseName]);
if (AHouseData[HouseID][StaticHouse] == true)
{
format(OptionsList, sizeof(OptionsList), "%sÓñòàíîâèòü èìÿ\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÊóïèòü àâòî\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÊóïèòü ñòðàõîâêó\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÏðîäàòü àâòî\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÏðîäàòü äîì\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÎòêðûòü äîì\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÇàêðûòü äîì\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%s{FF0000}Âûéòè èç äîìà\n", OptionsList);
}
else
{
format(OptionsList, sizeof(OptionsList), "%sÓñòàíîâèòü èìÿ\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÑìåíèòü èíòåðüåð\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÊóïèòü àâòî\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÊóïèòü ñòðàõîâêó\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÏðîäàòü àâòî\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÏðîäàòü äîì\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÎòêðûòü äîì\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%sÇàêðûòü äîì\n", OptionsList);
format(OptionsList, sizeof(OptionsList), "%s{FF0000}Âûéòè èç äîìà\n", OptionsList);
}
ShowPlayerDialog(playerid, 5551, DIALOG_STYLE_LIST, DialogTitle, OptionsList, "Âûáðàòü", "Îòìåíà");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Òû íå âíóòðè äîìà");
return 1;
}
COMMAND:gohome(playerid, params[])
{
new HouseList[1000], HouseID;
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (INT_IsPlayerJailed(playerid) == 0)
{
if (GetPlayerVehicleSeat(playerid) == -1)
{
for (new HouseSlot; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
{
HouseID = APlayerData[playerid][Houses][HouseSlot];
if (HouseID != 0)
format(HouseList, 1000, "%s{00FF00}%s{FFFFFF}\n", HouseList, AHouseData[HouseID][HouseName]);
else
format(HouseList, 1000, "%s{FFFFFF}%s{FFFFFF}\n", HouseList, "Äîìà íåòó");
}
ShowPlayerDialog(playerid, 5553, DIALOG_STYLE_LIST, "Âûáèðèòå äîì:", HouseList, "Âûáðàòü", "Îòìåíà");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû äîëæíû áûòü íå â òðàíñïîðòå");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû íå ìîæåòå èñïîëüçîâàòü /gohome, êîãäà âû íàõîäèòåñü â òþðüìå");
return 1;
}
COMMAND:getcar(playerid, params[])
{
new HouseList[1000], HouseID;
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (GetPlayerVehicleSeat(playerid) == -1)
{
for (new HouseSlot; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
{
HouseID = APlayerData[playerid][Houses][HouseSlot];
if (HouseID != 0)
format(HouseList, 1000, "%s{00FF00}%s{FFFFFF}\n", HouseList, AHouseData[HouseID][HouseName]);
else
format(HouseList, 1000, "%s{FFFFFF}%s{FFFFFF}\n", HouseList, "Äîìà íåòó");
}
ShowPlayerDialog(playerid, 5510, DIALOG_STYLE_LIST, "Âûáðàòü äîì, ÷òîáû ïîëó÷èòü òðàíñïîðò:", HouseList, "Âûáðàòü", "Îòìåíà");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû íå äîëæíû áûòü â òðàíñïîðòå");
return 1;
}
COMMAND:park(playerid, params[])
{
new Float:x, Float:y, Float:z, Float:rot, vid, HouseID, Msg[128];
new engine,lights,alarm,doors,bonnet,boot,objective;
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (GetPlayerVehicleSeat(playerid) == 0)
{
vid = GetPlayerVehicleID(playerid);
HouseID = AVehicleData[vid][BelongsToHouse];
if (HouseID != 0)
{
if (IsPlayerInRangeOfPoint(playerid, ParkRange, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
{
GetVehiclePos(vid, x, y, z);
GetVehicleZAngle(vid, rot);
AVehicleData[vid][SpawnX] = x;
AVehicleData[vid][SpawnY] = y;
AVehicleData[vid][SpawnZ] = z;
AVehicleData[vid][SpawnRot] = rot;
for (new CarSlot; CarSlot < 10; CarSlot++)
{
if (AHouseData[HouseID][VehicleIDs][CarSlot] == vid)
{
House_ReplaceVehicle(HouseID, CarSlot); // Re-create the vehicle at the same spot the player wants to park his vehicle
PutPlayerInVehicle(playerid, AHouseData[HouseID][VehicleIDs][CarSlot], 0);
GetVehicleParamsEx(AHouseData[HouseID][VehicleIDs][CarSlot], engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(AHouseData[HouseID][VehicleIDs][CarSlot], 1, 1, alarm, doors, bonnet, boot, objective);
break;
}
}
SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Âû ïðèïàðêîâàëè âàøü ëè÷íûé òðàíñïîðò");
HouseFile_Save(HouseID);
}
else
{
format(Msg, 128, "{FF0000}Âû äîëæíû áûòü â ïðåäåëàõ {FFFF00}%im{FF0000} âàøåãî äîìà ÷òîáû ïðèïàðêîâàòü ýòîò àâòîìîáèëü", ParkRange);
SendClientMessage(playerid, 0xFFFFFFFF, Msg);
}
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû íå ìîæåòå ïðèïàðêîâàòü àâòîìîáèëü, êîòîðûé íå ïðèíàäëåæèò âàì");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû äîëæíû áûòü çà ðóëåì òðàíñïîðòà");
return 1;
}
COMMAND:evict(playerid, params[])
{
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
if (INT_CheckPlayerAdminLevel(playerid, 5) == 0) return 0;
new Msg[128], Name[24];
if (GetPlayerVehicleSeat(playerid) == -1)
{
for (new HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
if (IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
{
if (IsPlayerInRangeOfPoint(playerid, 2.5, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
{
if (AHouseData[HouseID][Owned] == true)
{
for (new pid; pid < MAX_PLAYERS; pid++)
{
if (INT_IsPlayerLoggedIn(playerid) == 1)
{
GetPlayerName(pid, Name, sizeof(Name));
if (strcmp(AHouseData[HouseID][Owner], Name, false) == 0)
{
format(Msg, 128, "{FF0000}Òû ïîòåðÿë ñâîé äîì {FFFF00}\"%s\"", AHouseData[HouseID][HouseName]);
SendClientMessage(pid, 0xFFFFFFFF, Msg);
for (new HouseSlot; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
if (APlayerData[pid][Houses][HouseSlot] == HouseID)
APlayerData[pid][Houses][HouseSlot] = 0;
break;
}
}
}
}
House_RemoveVehicles(HouseID);
AHouseData[HouseID][Owned] = false;
AHouseData[HouseID][Owner] = 0;
House_UpdateEntrance(HouseID);
HouseFile_Save(HouseID);
format(Msg, 128, "{00FF00}Ó âàñ âûñåëèëè, äîìà ñ ID: {FFFF00}%i", HouseID);
SendClientMessage(playerid, 0xFFFFFFFF, Msg);
return 1;
}
}
}
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Íåò äîìà â ðÿä, ÷òîáû óäàëèòü");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Âû äîëæíû áûòü íà íîãå, ÷òîáû óäàëèòü äîì");
return 1;
}
