Vassasssin
Умник
Суть команды заключается в том , что введя команду /pos у нас появляется диалог в котором есть 3 функции
1) Сохранить координаты
2) Телепортироваться
3) Текущие координаты
Сначала встаем в нужное нам место , сохраняем координаты , и в любое время мы сможем там оказаться , достаточно выбрать Телепортироваться
Внимание , необходима БД !
Команда /pos
Добавляем в паблик OnDialogResponse
Добавляем ко всем new
В паблик OnPlayerConnect
Добавляем в паблик OnPlayerCommandText
Добавляем 3 переменные в enum , которые отвечают за координаты x,y,z
В паблик OnPlayerConnect обнуляем переменные до 0
В сохранение данных игрока
В регистрацию
В авторизацию
Используется инклюд mxINI
Автор Vassasssin ( Я )
Данная тема предназначена для новичков :ay:
Вроде темы не видел похожей
Скриншот из игры
1) Сохранить координаты
2) Телепортироваться
3) Текущие координаты
Сначала встаем в нужное нам место , сохраняем координаты , и в любое время мы сможем там оказаться , достаточно выбрать Телепортироваться
Внимание , необходима БД !
Команда /pos
PHP:
if(strcmp(cmd, "/pos", true) == 0)
{
ShowPlayerDialog(playerid,451,DIALOG_STYLE_LIST,"Координаты","Сохранить координаты\nТелепортироваться\nТекущие координаты","Выбор","Отмена");
return 1;
}
Добавляем в паблик OnDialogResponse
PHP:
if(dialogid == 451)
{
if(response)
{
{switch(listitem)
{
case 0:
{
GetPlayerPos(playerid,PlayerInfo[playerid] [pPosX],PlayerInfo[playerid] [pPosY],PlayerInfo[playerid] [pPosZ]);
SendClientMessage(playerid,0xFFFFFFFF, "Координаты сохранены");
}
case 1:
{
if(PlayerInfo[playerid] [pPosX] == 0)
{
SendClientMessage(playerid,0xFFFFFFFF, "Необходимо сохранить координаты");
}
else
{
SetPlayerPos(playerid,PlayerInfo[playerid] [pPosX],PlayerInfo[playerid] [pPosY],PlayerInfo[playerid] [pPosZ]);
SendClientMessage(playerid,0xFFFFFFFF, "Вы телепортировались");
}
}
case 2:
{
if(PlayerInfo[playerid] [pPosX] == 0)
{
SendClientMessage(playerid,0xFFFFFFFF, "Необходимо сохранить координаты");
}
else
{
SetPlayerCameraPos(playerid,PlayerInfo[playerid] [pPosX],PlayerInfo[playerid] [pPosY],PlayerInfo[playerid] [pPosZ]);
SetPlayerCameraLookAt(playerid,PlayerInfo[playerid] [pPosX],PlayerInfo[playerid] [pPosY],PlayerInfo[playerid] [pPosZ]);
Camera[playerid] = 1;
SendClientMessage(playerid,0xFFFFFFFF, "Введите /exit , чтобы прекратить просмотр");
}
}
}
}
}
}
PHP:
new Camera[MAX_PLAYERS];
PHP:
Camera[playerid] = 0;
PHP:
if (strcmp("/exit", cmdtext, true, 10) == 0)
{
if(Camera[playerid] == 1)
{
SetCameraBehindPlayer(playerid);
Camera[playerid] = 0;
return 1;
}
}
PHP:
enum pInfo {
Float:pPosX,
Float:pPosY,
Float:pPosZ
}
PHP:
PlayerInfo[playerid] [pPosX] = 0;
PlayerInfo[playerid] [pPosY] = 0;
PlayerInfo[playerid] [pPosZ] = 0;
PHP:
ini_setFloat(iniFile,"X",Player[playerid][pPosX]);
ini_setFloat(iniFile,"Y",Player[playerid][pPosY]);
ini_setFloat(iniFile,"Z",Player[playerid][pPosZ]);
PHP:
ini_setFloat(iniFile,"X",Player[playerid][pPosX]);
ini_setFloat(iniFile,"Y",Player[playerid][pPosY]);
ini_setFloat(iniFile,"Z",Player[playerid][pPosZ]);
PHP:
ini_getFloat(iniFile,"X",Player[playerid][pPosX]);
ini_getFloat(iniFile,"Y",Player[playerid][pPosY]);
ini_getFloat(iniFile,"Z",Player[playerid][pPosZ]);
Автор Vassasssin ( Я )
Данная тема предназначена для новичков :ay:
Вроде темы не видел похожей
Скриншот из игры
Последнее редактирование:
