Команда:
CMD:setspawn(playerid, params[])
{
Dialog
(
playerid, DIALOG_SET_SPAWN, DIALOG_STYLE_LIST,
"{FFD83D}Изменение места появления в игре",
"1. На Ж/Д вокзале или автостанции\n\
2. В собственном доме\n\
3. В гостиничном номере\n\
4. На базе организации\n\
5. В гостях (совместное проживание)\n\
6. В доме семьи",
"Выбрать", "Отмена"
);
return 1;
}
Вот ДИАЛОГ:
case DIALOG_SET_SPAWN:
{
if(response)
{
switch(listitem)
{
case 1: if(GetPlayerHouse(playerid, HOUSE_TYPE_HOME) == -1) return SendClientMessage(playerid, 0x999999FF, "У Вас нет дома");
case 2: if(GetPlayerHouse(playerid, HOUSE_TYPE_HOTEL) == -1) return SendClientMessage(playerid, 0x999999FF, "Вы не проживаете в гостиничном номере");
case 3: if(!GetPlayerTeamEx(playerid)) return SendClientMessage(playerid, 0x999999FF, "Вы не состоите в организации");
case 4: if(GetPlayerHouse(playerid, HOUSE_TYPE_ROOM) == -1) return SendClientMessage(playerid, 0x999999FF, "Вы не проживаете ни у кого в гостях");
case 5: if(!GetPlayerFamily(playerid)) return SendClientMessage(playerid, 0xFF6600FF, "Вы не состоите в семье");
}
SetPlayerData(playerid, P_SPAWN, listitem);
UpdatePlayerDatabaseInt(playerid, "setting_spawn", listitem);
SendClientMessage(playerid, 0x3399FFFF, "Место появления в игре изменено");
}
}
еще нашел вот это:
switch(GetPlayerSpawnSetting(playerid))
{
case 1:
{
if(GetPlayerHouse(playerid, HOUSE_TYPE_HOME) == -1)
{
SetPlayerSpawnSetting(playerid, 0);
UpdatePlayerDatabaseInt(playerid, "setting_spawn", 0);
return 1;
}
EnterPlayerToHouse(playerid, GetPlayerHouse(playerid, HOUSE_TYPE_HOME));
}
case 2:
{
if(GetPlayerHouse(playerid, HOUSE_TYPE_HOTEL) == -1)
{
SetPlayerSpawnSetting(playerid, 0);
UpdatePlayerDatabaseInt(playerid, "setting_spawn", 0);
return 1;
}
new hotel_id = GetPlayerData(playerid, P_HOUSE),
room_id = GetPlayerData(playerid, P_HOUSE_ROOM);
SetPlayerData(playerid, P_IN_BUSINESS, hotel_id + 30);
EnterPlayerToHotelRoom(playerid, hotel_id, room_id);
}
case 3:
{
new team_id = GetPlayerTeamEx(playerid);
if(!team_id)
{
SetPlayerSpawnSetting(playerid, 0);
UpdatePlayerDatabaseInt(playerid, "setting_spawn", 0);
return 1;
}
SetPlayerPosEx
(
playerid,
GetTeamData(team_id, O_SPAWN)[0],
GetTeamData(team_id, O_SPAWN)[1],
GetTeamData(team_id, O_SPAWN)[2],
GetTeamData(team_id, O_SPAWN)[3],
GetTeamData(team_id, O_SPAWN_INT),
GetTeamData(team_id, O_SPAWN_VW)
);
}
case 4:
{
if(GetPVarInt(playerid, "spawn_") == 1) return true;
if(GetPlayerHouse(playerid, HOUSE_TYPE_ROOM) == -1)
{
SetPlayerSpawnSetting(playerid, 0);
UpdatePlayerDatabaseInt(playerid, "setting_spawn", 0);
return 1;
}
EnterPlayerToHouse(playerid, GetPlayerHouse(playerid, HOUSE_TYPE_ROOM));
}
case 5:
{
new fam_id = GetPlayerData(playerid, P_FAMILY);
if(!GetPlayerData(playerid, P_FAMILY))
{
SetPlayerSpawnSetting(playerid, 0);
UpdatePlayerDatabaseInt(playerid, "setting_spawn", 0);
return 1;
}
SetPlayerPosEx
(
playerid,
g_family[fam_id][F_SPAWN_POSITION][0],
g_family[fam_id][F_SPAWN_POSITION][1],
g_family[fam_id][F_SPAWN_POSITION][2],
g_family[fam_id][F_SPAWN_POSITION][3],
g_family[fam_id][F_SPAWN_IV][0],
g_family[fam_id][F_SPAWN_IV][1]
);
}
}
}
return 1;
}