a ház eladás dialogba van ebben:
OMMAND:housemenu(playerid, params[])
{
// Setup local variables
new OptionsList[200], DialogTitle[200];
// Send the command to all admins so they can see it
SendAdminText(playerid, \"/housemenu\", params);
// Check if the player has logged in
if (APlayerData[playerid][LoggedIn] == true)
{
// Check if the player is inside a house
if (APlayerData[playerid][CurrentHouse] != 0)
{
format(DialogTitle, sizeof(DialogTitle), \"Select option for %s\", AHouseData[APlayerData[playerid][CurrentHouse]][HouseName]);
format(OptionsList, sizeof(OptionsList), \"%s Ház Név Változtatás\\n\", OptionsList);
format(OptionsList, sizeof(OptionsList), \"%s Ház fejlesztése\\n\", OptionsList);
format(OptionsList, sizeof(OptionsList), \"%s AutóVásárlás\\n\", OptionsList);
format(OptionsList, sizeof(OptionsList), \"%s Aútó Biztositás\\n\", OptionsList);
format(OptionsList, sizeof(OptionsList), \"%s Aútó eladás\\n\", OptionsList);
format(OptionsList, sizeof(OptionsList), \"%s Ház Eladás\\n\", OptionsList);
format(OptionsList, sizeof(OptionsList), \"%s Ház Kinyit Nyivanoság Elot\\n\", OptionsList);
format(OptionsList, sizeof(OptionsList), \"%s Ház Bezár Nyivanoság Elot\\n\", OptionsList);
format(OptionsList, sizeof(OptionsList), \"%s Kilép a házból\\n\", OptionsList);
// Show the housemenu
ShowPlayerDialog(playerid, DialogHouseMenu, DIALOG_STYLE_LIST, DialogTitle, OptionsList, \"Választ\", \"Bezár\");
}
else
SendClientMessage(playerid, 0xFF0000FF, \"You\'re not inside a house\");
}
else
return 0;
// Let the server know that this was a valid command
return 1;
}
Dialog_HouseMenu(playerid, response, listitem)
{
// Just close the dialog if the player clicked \"Cancel\"
if(!response) return 1;
// Setup local variables
new UpgradeList[2000], HouseID, DialogTitle[200], Counter, UpgradePrice, Msg[128], CarSlot, VehicleClassList[1000], VehicleList[500];
// Get the HouseID of the house where the player is
HouseID = APlayerData[playerid][CurrentHouse];
// Select an option based on the selection in the list
switch(listitem)
{
case 0: // Change house name
{
// Only the house-owner can use this option
if (House_PlayerIsOwner(playerid, HouseID) == 1)
{
format(DialogTitle, 200, TXT_DialogOldHouseName, AHouseData[HouseID][HouseName]);
ShowPlayerDialog(playerid, DialogHouseNameChange, DIALOG_STYLE_INPUT, DialogTitle, TXT_DialogEnterNewHouseName, TXT_DialogButtonSelect, TXT_DialogButtonCancel);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a haz tulajdonosa hasznalhatja ezt az opciot\");
}
case 1: // Upgrade the house
{
// Only the house-owner can use this option
if (House_PlayerIsOwner(playerid, HouseID) == 1)
{
// Check if it\'s possible to upgrade further
if (AHouseData[HouseID][HouseLevel] < AHouseData[HouseID][HouseMaxLevel])
{
// Add only the upgrades above the current house-level to the upgradelist
for (new i = AHouseData[HouseID][HouseLevel] + 1; i <= AHouseData[HouseID][HouseMaxLevel]; i++)
{
Counter++; // Add 1 to the counter each time an upgrade is added to the upgradelist
UpgradePrice = ((AHouseData[HouseID][HousePrice] * Counter) / 100) * HouseUpgradePercent;
// Add the upgrade-info in green if the player can afford it, and in red if he cannot afford it
if (APlayerData[playerid][PlayerMoney] >= UpgradePrice)
format(UpgradeList, 2000, \"%s{00FF00}%s (level %i)\\t\\t$%i\\n\", UpgradeList, AHouseInteriors[interiorName], i, UpgradePrice);
else
format(UpgradeList, 2000, \"%s{FF0000}%s (level %i)\\t\\t$%i\\n\", UpgradeList, AHouseInteriors[interiorName], i, UpgradePrice);
}
// Show another dialog to let the player select which upgrade he wants for his house
ShowPlayerDialog(playerid, DialogUpgradeHouse, DIALOG_STYLE_LIST, TXT_DialogSelectHouseUpgrade, UpgradeList, TXT_DialogButtonSelect, TXT_DialogButtonCancel);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, TXT_HouseReachedMaxLevel);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a haz tulajdonosa hasznalhatja ezt az opciot\");
}
case 2: // Buy house-car
{
// Only the house-owner can use this option
if (House_PlayerIsOwner(playerid, HouseID) == 1)
{
// Find a free carslot
CarSlot = House_GetFreeCarSlot(HouseID);
// Check if the carslot is valid
if (CarSlot != -1)
{
// Let the player choose a vehicle-class
format(VehicleClassList, 1000, \"%s{00FF00}%s{FFFFFF}\\n\", VehicleClassList, \"Motrok\");
format(VehicleClassList, 1000, \"%s{40FF00}%s{FFFFFF}\\n\", VehicleClassList, \"Hajok\");
format(VehicleClassList, 1000, \"%s{80FF00}%s{FFFFFF}\\n\", VehicleClassList, \"Cabriok\");
format(VehicleClassList, 1000, \"%s{B0FF00}%s{FFFFFF}\\n\", VehicleClassList, \"Helicopterek\");
format(VehicleClassList, 1000, \"%s{FFFF00}%s{FFFFFF}\\n\", VehicleClassList, \"MunkaJármuek\");
format(VehicleClassList, 1000, \"%s{B0FF40}%s{FFFFFF}\\n\", VehicleClassList, \"Low-Riderek\");
format(VehicleClassList, 1000, \"%s{80FF80}%s{FFFFFF}\\n\", VehicleClassList, \"Telep Aútók\");
format(VehicleClassList, 1000, \"%s{40FFB0}%s{FFFFFF}\\n\", VehicleClassList, \"Repülok\");
format(VehicleClassList, 1000, \"%s{00FFFF}%s{FFFFFF}\\n\", VehicleClassList, \"Szolgálati Jármuvek\");
format(VehicleClassList, 1000, \"%s{00B0FF}%s{FFFFFF}\\n\", VehicleClassList, \"RC Jarmuvek\");
format(VehicleClassList, 1000, \"%s{0080FF}%s{FFFFFF}\\n\", VehicleClassList, \"Saloon Autók\");
format(VehicleClassList, 1000, \"%s{0040FF}%s{FFFFFF}\\n\", VehicleClassList, \"Sport Autók\");
format(VehicleClassList, 1000, \"%s{0000FF}%s{FFFFFF}\\n\", VehicleClassList, \"Kombik\");
format(VehicleClassList, 1000, \"%s{4000FF}%s{FFFFFF}\\n\", VehicleClassList, \"Trailerek\");
format(VehicleClassList, 1000, \"%s{8000FF}%s{FFFFFF}\\n\", VehicleClassList, \"Egyedi jármuvek\");
// Ask which vehicle class the player wants to see to buy a vehicle
ShowPlayerDialog(playerid, DialogBuyCarClass, DIALOG_STYLE_LIST, TXT_DialogBuyCarSelectClass, VehicleClassList, TXT_DialogButtonSelect, TXT_DialogButtonCancel);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, TXT_HouseHasMaxVehicles);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a haz tulajdonosa hasznalhatja ezt az opciot\");
}
case 3: // Buy house-car insurance
{
// Only the house-owner can use this option
if (House_PlayerIsOwner(playerid, HouseID) == 1)
{
new MsgInsurance[128];
// Check if this house doesn\'t have insurance yet
if (AHouseData[HouseID][insurance] == 0)
{
// Check if the player can afford the insurance
if (APlayerData[playerid][PlayerMoney] >= (AHouseData[HouseID][HousePrice] / 10))
{
// Construct the message for the dialog, this includes the price for the insurance
format(MsgInsurance, 128, TXT_DialogBuyInsurance, AHouseData[HouseID][HousePrice] / 10);
// Ask the player if the wants to buy an insurance for this house\'s vehicles
ShowPlayerDialog(playerid, DialogBuyInsurance, DIALOG_STYLE_MSGBOX, TXT_DialogTitleBuyInsurance, MsgInsurance, TXT_DialogButtonYes, TXT_DialogButtonNo);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, TXT_CannotAffordInsurance);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, TXT_HouseAlreadyHasInsurance);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a haz tulajdonosa hasznalhatja ezt az opciot\");
}
case 4: // Sell house-car
{
// Only the house-owner can use this option
if (House_PlayerIsOwner(playerid, HouseID) == 1)
{
new BuyableCarIndex, bool:HouseHasCars = false;
// Check if the house has any cars assigned to it
for (CarSlot = 0; CarSlot < 5; CarSlot++)
if (AHouseData[HouseID][VehicleIDs][CarSlot] != 0)
HouseHasCars = true;
// Check if the house has any cars assigned to it
if (HouseHasCars == true)
{
// Add all vehicles to the list
for (CarSlot = 0; CarSlot < 10; CarSlot++)
{
if (AHouseData[HouseID][VehicleIDs][CarSlot] != 0)
{
// Get the index where the first vehicle is found in the ABuyableVehicles array
BuyableCarIndex = VehicleBuyable_GetIndex(GetVehicleModel(AHouseData[HouseID][VehicleIDs][CarSlot]));
// Add the name of the vehicle to the list
format(VehicleList, 500, \"%s{00FF00}%s: $%i{FFFFFF}\\n\", VehicleList, ABuyableVehicles[buyableCarIndex][CarName], ABuyableVehicles[buyableCarIndex][Price] / 2);
}
else
format(VehicleList, 500, TXT_EmptyCarSlot, VehicleList);
}
// Ask which vehicle class the player wants to see to buy a vehicle
ShowPlayerDialog(playerid, DialogSellCar, DIALOG_STYLE_LIST, TXT_SelectVehicleToSell, VehicleList, TXT_DialogButtonSelect, TXT_DialogButtonCancel);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, TXT_NoHouseVehicles);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a haz tulajdonosa hasznalhatja ezt az opciot\");
}
case 5: // Sell house
{
// Only the house-owner can use this option
if (House_PlayerIsOwner(playerid, HouseID) == 1)
{
// Setup local variables
new bool:HouseHasCars = false;
// Check if the house has any cars assigned to it
for (CarSlot = 0; CarSlot < 10; CarSlot++)
if (AHouseData[HouseID][VehicleIDs][CarSlot] != 0)
HouseHasCars = true;
// Check if all house-cars have been sold (all slots are empty)
if (HouseHasCars == false)
{
format(Msg, 128, TXT_SureSellHouse, House_CalcSellPrice(HouseID));
ShowPlayerDialog(playerid, DialogSellHouse, DIALOG_STYLE_MSGBOX, TXT_AreYouSure, Msg, TXT_DialogButtonYes, TXT_DialogButtonNo);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, TXT_CannotSellHouseWithCars);
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a haz tulajdonosa hasznalhatja ezt az opciot\");
}
case 6: // Open the house to the public (everyone can enter it)
{
// Only the house-owner can use this option
if (House_PlayerIsOwner(playerid, HouseID) == 1)
{
// Open the house to the public
AHouseData[HouseID][HouseOpened] = true;
// Let the player know he opened the house to the public
SendClientMessage(playerid, 0xFFFFFFFF, \"{00FF00}Kinyitottad a hazad publikussa, barki be tud jonni\");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a haz tulajdonosa hasznalhatja ezt az opciot\");
}
case 7: // Close the house to the public (only the owner can enter it)
{
// Only the house-owner can use this option
if (House_PlayerIsOwner(playerid, HouseID) == 1)
{
// Close the house to the public
AHouseData[HouseID][HouseOpened] = false;
// Let the player know he closed the house to the public
SendClientMessage(playerid, 0xFFFFFFFF, \"{00FF00}Bezartad a hazad, csak te tudsz bejonni\");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a haz tulajdonosa hasznalhatja ezt az opciot\");
}
case 8: // Exit the house
{
House_Exit(playerid, HouseID);
}
}
return 1;
}
Dupla hozzászólás automatikusan összefûzve. ( 2013. február 12. - 18:31:33 )
megoldható?