В теме 31 сообщение

Сабж. 

Ко всем new: 

new FirstPerson[MAX_PLAYERS], 
    bool:switch_fp[MAX_PLAYERS];

В OnPlayerConnect <ИЛИ> в OnPlayerDisconnect:

switch_fp[playerid] = false;

В конец <ИЛИ> начало мода <ИЛИ> ко всем стокам:
 

stock ChangeView(playerid, oldstate, newstate)
{
    new Float: X[3], Float: Y[3], Float: Z[3];
    if(GetPlayerVehicleID(playerid) > 0)
    {
        GetVehicleModelInfo(GetVehicleModel(GetPlayerVehicleID(playerid)), 1, X[0], Y[0], Z[0]);
        GetVehicleModelInfo(GetVehicleModel(GetPlayerVehicleID(playerid)), 2, X[1], Y[1], Z[1]);
        GetVehicleModelInfo(GetVehicleModel(GetPlayerVehicleID(playerid)), 3, X[2], Y[2], Z[2]);
    }
    if(oldstate == newstate) AttachCameraToObject(playerid, FirstPerson[playerid]);
    switch(newstate)
    {
        case 1: AttachObjectToPlayer(FirstPerson[playerid], playerid, 0.0, 0.13, 0.65, 0, 0, 0), AttachCameraToObject(playerid, FirstPerson[playerid]);
        case 2, 3:
        {
            switch(GetPlayerVehicleSeat(playerid))
            {
                case 0: { X[1] -= (X[0] / 2.43), Y[1] -= 0.1, Z[1] += 0.6; AttachObjectToVehicle(FirstPerson[playerid], GetPlayerVehicleID(playerid), X[1], Y[1], Z[1], 0, 0, 0); }
                case 1: { X[1] += 0.0, Y[1] -= 0.1, Z[1] += 0.55; AttachObjectToVehicle(FirstPerson[playerid], GetPlayerVehicleID(playerid), X[1], Y[1], Z[1], 0, 0, 0); }
                case 2: { X[2] -= (X[0] / 2.43), Y[2] += 0.0, Z[2] += 0.6; AttachObjectToVehicle(FirstPerson[playerid], GetPlayerVehicleID(playerid), X[2], Y[2], Z[2], 0, 0, 0); }
                case 3: { X[2] += 0.0, Y[2] += 0.0, Z[2] += 0.55; AttachObjectToVehicle(FirstPerson[playerid], GetPlayerVehicleID(playerid), X[2], Y[2], Z[2], 0, 0, 0); }
                default:
                {
                    switch(GetPlayerVehicleSeat(playerid))
                    {
                        case 0: AttachObjectToVehicle(FirstPerson[playerid], GetPlayerVehicleID(playerid), X[1], Y[1] + 0.45, Z[1] + 0.6, 0, 0, 0);
                        case 1: AttachObjectToVehicle(FirstPerson[playerid], GetPlayerVehicleID(playerid), X[2], Y[2] + 0.4, Z[2] + 0.5, 0, 0, 0);
                    }
                }
            }
            AttachCameraToObject(playerid, FirstPerson[playerid]);
        }
    }
    return 0;
}

Команда на ZCMD / DC_CMD:

CMD:firstperson(playerid, params[])
{
    if(!IsPlayerConnected(playerid)) return 1;
    switch(switch_fp[playerid])
    {
        case false:
        {
            switch_fp[playerid] = true, SendClientMessage(playerid, -1, "Ты включил вид от первого лица");
            FirstPerson[playerid] = CreateObject(19300, 0, 0, 0, 0, 0, 0);
            ChangeView(playerid, 0, GetPlayerState(playerid));
        }
        case true: switch_fp[playerid] = false, SetCameraBehindPlayer(playerid), SendClientMessage(playerid, -1, "Ты выключил вид от первого лица");
    }
    return 1;
}

Команда на стандартном движке, пихать в OnPlayerCommandText:

if(strcmp(cmd, "/firstperson", true) == 0)
{
    if(!IsPlayerConnected(playerid)) return 1;
    switch(switch_fp[playerid])
    {
        case false:
        {
            switch_fp[playerid] = true, SendClientMessage(playerid, -1, "Ты включил вид от первого лица");
            FirstPerson[playerid] = CreateObject(19300, 0, 0, 0, 0, 0, 0);
            ChangeView(playerid, 0, GetPlayerState(playerid));
        }
        case true: switch_fp[playerid] = false, SetCameraBehindPlayer(playerid), SendClientMessage(playerid, -1, "Ты выключил вид от первого лица");
    }
    return 1;
}

Автор: неизвестен.
Автор доработки и оптимизации: РЕТРО 

Есть вопрос? Задай его в комментарии к этой теме!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Помогите, такая вот ошибочка:

new.pwn(4983) : error 010: invalid function or declaration

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@HAPKOMAH строчку скинь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, DEST сказал:

@HAPKOMAH строчку скинь

    switch_fp[playerid] = false;
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@HAPKOMAH где эта строка находится, куда вставил? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, DEST сказал:

@HAPKOMAH где эта строка находится, куда вставил? 

public OnPlayerConnect(playerid)
{

1 минуту назад, DEST сказал:

@HAPKOMAH где эта строка находится, куда вставил? 

Вот весь паблик:

public OnPlayerConnect(playerid)
{
    if(playerid == INVALID_PLAYER_ID || gamemodeloaded != 1) return Kick(playerid);
    SetPlayerDataToDefault(playerid);
    GetPlayerIp(playerid, pInfo[playerid][pIP], 16);
    GetPlayerName(playerid, pInfo[playerid][pName], MAX_PLAYER_NAME);
    DelObjects(playerid);
    //mysql_real_escape_string(pInfo[playerid][pName], pInfo[playerid][pName]);
    if(gSlotUsed[playerid] && GetString(playersIP[playerid], pInfo[playerid][pIP])) return Ban(playerid);
    GetPlayerIp(playerid, playersIP[playerid], 16);
    gSlotUsed[playerid] = true;
 	if(IsLoginInvalid(GetName(playerid)))
	{
	    SendClientMessage(playerid, COLOR_RED, "Âàøå èìÿ ñîäåðæèò çàïðåùåííûå ñèìâîëû èëè öèôðû, èñïîëüçóéòå èìÿ ôîðìàòà Èìÿ_Ôàìèëèÿ íà àíãëèéñêîì");
		return Kick(playerid);
	}
	ResetPlayerWeaponsEx(playerid);
	CreateTextDraws(playerid);
	SetPVarInt(playerid, "PickupID", -1);
	SetPlayerColor(playerid, COLOR_GREY);
	return 1;
}
	switch_fp[playerid] = false;
}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@HAPKOMAH Там же написано, в сам паблик. Перед return 1 нужно было вставить. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@DEST

 Тьфу..Не заметил.

Такие вот ошибочки

new.pwn(4981) : warning 209: function "Itter_OnPlayerConnect" should return a value
new.pwn(4982) : error 010: invalid function or declaration
new.pwn(4983) : error 010: invalid function or declaration

А вот паблик:

public OnPlayerConnect(playerid)
{
    if(playerid == INVALID_PLAYER_ID || gamemodeloaded != 1) return Kick(playerid);
    SetPlayerDataToDefault(playerid);
    GetPlayerIp(playerid, pInfo[playerid][pIP], 16);
    GetPlayerName(playerid, pInfo[playerid][pName], MAX_PLAYER_NAME);
    DelObjects(playerid);
    //mysql_real_escape_string(pInfo[playerid][pName], pInfo[playerid][pName]);
    if(gSlotUsed[playerid] && GetString(playersIP[playerid], pInfo[playerid][pIP])) return Ban(playerid);
    GetPlayerIp(playerid, playersIP[playerid], 16);
    gSlotUsed[playerid] = true;
 	if(IsLoginInvalid(GetName(playerid)))
	{
	    SendClientMessage(playerid, COLOR_RED, "Âàøå èìÿ ñîäåðæèò çàïðåùåííûå ñèìâîëû èëè öèôðû, èñïîëüçóéòå èìÿ ôîðìàòà Èìÿ_Ôàìèëèÿ íà àíãëèéñêîì");
		return Kick(playerid);
	}
	ResetPlayerWeaponsEx(playerid);
	CreateTextDraws(playerid);
	SetPVarInt(playerid, "PickupID", -1);
	SetPlayerColor(playerid, COLOR_GREY);
	}
	switch_fp[playerid] = false;
 return 1;
}

 

@DEST

Думаю так понятно

O89eFBJr3ZE.jpg

Заметка от DEST , создано

Строки помечайте, на которые ошибки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@HAPKOMAH вставьте switch_fp[playerid] = false; после ResetPlayerWeaponsEx(playerid); 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@DEST Точно, все скомпилировалось, спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
25 минут назад, DEST сказал:

@HAPKOMAH вставьте switch_fp[playerid] = false; после ResetPlayerWeaponsEx(playerid); 

Системка замечательная, но есть недоработки.

Можете помочь сделать:

- Что бы при разгоне на авто не отдалялась;

- Сделано что когда игрок стоит на месте, можно камеру повернуть назад, при этом игрок не двигается ( нужно исправить );

Думаю не только мне будет полезно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@HAPKOMAH для машины другая система нужна, эта не подойдет. По позже может быть выложу. 

Насчет второго, то это уже специфика прикрепления камеры к объекту, поэтому, боюсь это никак не исправить. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@DEST Вы даработали?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

C:\Users\ßðîñëàâ\Desktop\everest rp\gamemodes\new.pwn(32739) : error 017: undefined symbol "ChangeView"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@YaroslavMadi stock ChangeView не добавили в мод

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо, работает, но есть баг, даже два:
1. Когда едешь на машине то камера колбасится, тоесть едешь и камера за сиденье уходит

2. Когда игрок с видом от перового лица забирается или перелезает через что либо то камера остаётся на позиции висенья на припятствии

3. Когда выходишь из инты то вид становится от 3 лица и когда прописываешь команду то такой-же вид, прийдётся спавнить обратно и выходить без 1 лица

А так всё прикольно и интересно, но лучше доработать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как его включить в игре?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 25.10.2018 в 21:39, VladiXer Play сказал:

Как его включить в игре?

 

/firstperson

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@DEST У меня не работает.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вроде норм, надо посмотреть еще :$

 

Даю тебе огромный +

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

C:\Users\IgromanGTX\OneDrive\Рабочий стол\НОвое\Netfoll RP\NTF\filterscripts\Wiew1.pwn(88) : error 017: undefined symbol "cmd"
C:\Users\IgromanGTX\OneDrive\Рабочий стол\НОвое\Netfoll RP\NTF\filterscripts\Wiew1.pwn(103) : warning 217: loose indentation
Pawn compiler 3.2.3664              Copyright (c) 1997-2006, ITB CompuPhase


1 Error.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@IgromanGTX у вас какой командный процессор в моде? Скиньте пример какой-нибудь команды из мода

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@DEST C:\Users\IgromanGTX\OneDrive\Рабочий стол\НОвое\Netfoll RP\NTF\filterscripts\Wiew1.pwn(88) 

Жень, чекай адрес... Он его скриптом сделал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
51 минуту назад, Nekit_Krut18 сказал:

@DEST C:\Users\IgromanGTX\OneDrive\Рабочий стол\НОвое\Netfoll RP\NTF\filterscripts\Wiew1.pwn(88) 

Жень, чекай адрес... Он его скриптом сделал.

+

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 16.06.2020 в 01:14, DEST сказал:

@IgromanGTX у вас какой командный процессор в моде? Скиньте пример какой-нибудь команды из мода

Обычный который павно предлагает 

Отредактировано пользователем IgromanGTX

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Mister Odin
      От Mister Odin
       
      new
       g_teleport_list[39][E_TELEPORT_LIST] = {  {"Спавн пгт.Батырево", 1802.3612, 2508.4824, 15.8887},  {"Спавн г.Арзамас", -113.5887, 977.7222, 12.0346},     {"Спавн г.Южный", 2744.2770, -2446.7246, 21.8988},     {"Центральный банк", 1852.020385,2040.791381,15.892713},  {"Рублёвка", -837.7783, 888.6161, 12.7232},  {"Казино", 1332.4252, 2358.7014, 17.6641},  {"Битва за контейнеры", 614.5167, 1722.3566, 12.0709},  {"Автосалон низкого класса", 2493.9616, -722.9544, 12.3315},  {"Автосалон среднего класса", 1407.7449, 455.4801, 13.1630},  {"Автосалон высокого класса", -14.0637, 2614.5664, 10.9892},   {"Мотосалон Harley Davidson", 785.720153, 750.465087, 12.000024},  {"Автошкола", 1909.174438,2227.679687,15.708162},  {"Военкомат", 1916.778564,2302.411376,15.574637},  {"Правительство области", -139.140975,593.789611,12.145712},  {"Отдел полиции №1 (ГИБДД)", 1906.805786,-2234.382812,11.257631},  {"Отдел полиции №2 (УМВД)", 2581.309326,-2416.139892,21.960090},  {"Отдел ФСБ", 1823.904663,2095.636718,15.848405},  {"Городская больница г.Арзамас", -285.797210,581.851562,12.120290},   {"СМИ", -317.708038,821.221679,13.051450},  {"Воинская часть", 1703.197265,1678.025878,15.279437},  {"Арзамасская ОПГ", 438.705322,1046.505126,12.002637},  {"Батыревская ОПГ", 1941.203857,2161.006591,15.705187},  {"Лыткаринская ОПГ", -2346.002441,75.257041,21.002962},  {"Шахта", 2381.5727, 1726.4451, -2.1506},  {"Завод", -1062.6697, 2204.1894, 38.0964},  {"Инкосация", 1864.1374, 2011.7136, 15.8546},  {"Транспортная Компания", 2362.1115, 1972.5627, 15.5530},  {"База механиков", 1840.918090,-118.025146,15.695312},  {"Курьерская служба доставки", 2764.509765,-2396.882568,21.890625},  {"Аренда автобуса(Южный)", 2771.041992,-2454.780761,21.845964},  {"Аренда автобуса(Арзамас)", -127.487670,943.652648,12.142824},   {"Аренда автобуса(Батырево)", 1798.986328,2529.591552,15.664262},  {"Гоночная трасса", -1568.7784, 1611.8305, 36.3971},  {"Дом на горе", -789.5397, -456.7479, 741.1422},  {"СТО и тюнинг-ателье", 1856.1375, -122.3266, 15.6888},  {"Аренда транспорта пгт.Батырево", 1763.641723,2255.673339,15.865348},  {"Аренда транспорта г.Арзамас", -36.923530,1360.673583,12.002090},  {"Аренда транспорта г.Южный", 1966.599975,-2603.943603,10.820312},  {"Тайный интерьер в Лыткарино", -2424.5818, 2846.3291, 40.7908} };