31 posts in this topic

Сабж. 

Ко всем 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;
}

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

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

 

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
Только что, DEST сказал:

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

    switch_fp[playerid] = false;
}

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
Только что, 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;
}

 

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

@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 , создано

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
25 минут назад, DEST сказал:

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

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

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

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

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

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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

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

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

Share this post


Link to post
Share on other sites

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

 

Share this post


Link to post
Share on other sites
В 25.10.2018 в 21:39, VladiXer Play сказал:

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

 

/firstperson

Share this post


Link to post
Share on other sites

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

 

Share this post


Link to post
Share on other sites

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

 

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

Share this post


Link to post
Share on other sites

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.
 

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites
51 минуту назад, Nekit_Krut18 сказал:

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

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

+

Share this post


Link to post
Share on other sites
В 16.06.2020 в 01:14, DEST сказал:

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

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

Edited by IgromanGTX

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • nocare.
      By nocare.
      Фризит(замораживает) при телепортах, переходах через пикапы, и так далее. Помогите, не могу понять в чем проблемма