AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Solved Camera (https://forums.alliedmods.net/showthread.php?t=309123)

blAck. 07-14-2018 10:17

Camera
 
Hey, I just started coding and I need help with small cs 1.6 plugin that I'm trying to make.
I know there is already one plugin that does this for you but I wanted to make my own with some difference.

It's about camera plugin. I'm trying to make when a player types /cam, he goes into 3rd camera mode, and if he is already in 3rd camera mode, he goes into first mode.
But with this code, I can only go in 3rd person, and I cannot come back in 1st person. Why? I think this code should be fine.

Code:

public setview(id)
{
        if(set_view(id, CAMERA_NONE)) {
               
                set_view(id, CAMERA_3RDPERSON)
               
        } else if(set_view(id, CAMERA_3RDPERSON)) {
               
                set_view(id, CAMERA_NONE)
               
                return PLUGIN_HANDLED
        } else {
        return PLUGIN_HANDLED
        }
        return PLUGIN_HANDLED
}


Ghosted 07-14-2018 10:19

Re: Camera
 
set_view only sets player view and returning nothing so you shouldnt use it in if statement, you can use bool[33]

Ghosted 07-14-2018 10:22

Re: Camera
 
Code:

new bool:PlayerInThirdPerson[33];

Code:

public setview(id)
{
        if(!PlayerInThirdPerson[id]) {
               
                set_view(id, CAMERA_3RDPERSON)
                PlayerInThirdPerson[id] = true;
        } else
               
                set_view(id, CAMERA_NONE)
                PlayerInThirdPerson[id] = false;
        }

        return PLUGIN_HANDLED
}


edon1337 07-14-2018 10:27

Re: Camera
 
This is how I did it in my plugin:
PHP Code:

enum
{
    
VIEW_NONE 0,
    
VIEW_3RDPERSON,
}

new 
g_iPlayerView33 ];

public 
plugin_init( )
{
    
RegisterHamHam_Player_ImpulseCommands"player""@HamPlayerImpulseCommands_Pre");
    
RegisterHamHam_Spawn"player""@HamSpawn_Post");
}

public 
client_connectid )
{
    
g_iPlayerViewid ] = VIEW_NONE;
}


public @
HamSpawn_Postid )
{
    if( 
is_user_aliveid ) )
    {
        
g_iPlayerViewid ] = VIEW_NONE;
    }
    return 
HAM_IGNORED;
}

public @
HamPlayerImpulseCommands_Preid )
{
    if( ! 
is_user_aliveid ) )
    return 
HAM_IGNORED;
    
    if( 
pevidpev_impulse ) == 201 )
    {
        
g_iPlayerViewid ] = g_iPlayerViewid ] == VIEW_3RDPERSON VIEW_NONE VIEW_3RDPERSON;
        
set_viewidg_iPlayerViewid ] );
        
        
set_pevidpev_impulse);
    }
    return 
HAM_IGNORED;



blAck. 07-14-2018 10:31

Re: Camera
 
Quote:

Originally Posted by Ghosted (Post 2603543)
Code:

new bool:PlayerInThirdPerson[33];

Code:

public setview(id)
{
        if(!PlayerInThirdPerson[id]) {
               
                set_view(id, CAMERA_3RDPERSON)
                PlayerInThirdPerson[id] = true;
        } else
               
                set_view(id, CAMERA_NONE)
                PlayerInThirdPerson[id] = false;
        }

        return PLUGIN_HANDLED
}


It won't work.

CrazY. 07-14-2018 10:32

Re: Camera
 
Show the full code.

blAck. 07-14-2018 10:36

Re: Camera
 
Quote:

Originally Posted by CrazY. (Post 2603546)
Show the full code.

Code:

#include <amxmodx>
#include <engine>
#include <amxmisc>

new bool:PlayerInThirdPerson[33];

public plugin_init()
{
    register_plugin("Camera", "1.0", "blAck")

    register_clcmd("say /cam", "setview")
}

public plugin_modules()
{
    require_module("engine")
}

public plugin_precache()
{
    precache_model("models/rpgrocket.mdl")
}

public setview(id)
{       
       
        if(!PlayerInThirdPerson[id]) {
               
                set_view(id, CAMERA_3RDPERSON)
                PlayerInThirdPerson[id] = true;
        } else
               
                set_view(id, CAMERA_NONE)
                PlayerInThirdPerson[id] = false;
}


CrazY. 07-14-2018 10:45

Re: Camera
 
Here it's working.

Code:
#include <amxmodx> #include <engine> new bool:PlayerInThirdPerson[33]; public plugin_init() {     register_plugin("Camera", "1.0", "blAck")     register_clcmd("say /cam", "setview") } public plugin_precache() {     precache_model("models/rpgrocket.mdl") } public setview(id) {       if (!PlayerInThirdPerson[id])     {         PlayerInThirdPerson[id] = true;         set_view(id, CAMERA_3RDPERSON);     }     else     {         PlayerInThirdPerson[id] = false;         set_view(id, CAMERA_NONE);     }     return PLUGIN_HANDLED; }

Spoiler

blAck. 07-14-2018 10:49

Re: Camera
 
Quote:

Originally Posted by CrazY. (Post 2603550)
Here it's working.

Code:
#include <amxmodx> #include <engine> new bool:PlayerInThirdPerson[33]; public plugin_init() {     register_plugin("Camera", "1.0", "blAck")     register_clcmd("say /cam", "setview") } public plugin_precache() {     precache_model("models/rpgrocket.mdl") } public setview(id) {       if (!PlayerInThirdPerson[id])     {         PlayerInThirdPerson[id] = true;         set_view(id, CAMERA_3RDPERSON);     }     else     {         PlayerInThirdPerson[id] = false;         set_view(id, CAMERA_NONE);     }     return PLUGIN_HANDLED; }

Spoiler

Thanks <3

Apb hq 07-14-2018 15:33

Re: Camera
 
Quote:

Originally Posted by blAck. (Post 2603551)
Thanks <3

Guys i am unable to test it now unfortunately , i wanted to know if this version of plugin has the transparency bug fixed
Thanks in advance


All times are GMT -4. The time now is 12:38.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.