djcev.com

//

Git Repos / fte_dogmode / qc / info / camera.qc

Last update to this file was on 2024-03-24 at 02:40.

Show camera.qc

//==============================================================================
// info_movie_camera, info_focal_point -- was in cutscene.qc
//==============================================================================

//======================================================================
// forward declarations
//======================================================================

// info_movie_camera
void() info_movie_camera_touch;
entity(entity src, vector org) spawn_info_movie_camera;
void(entity e) info_movie_camera_init;
void() info_movie_camera;

// info_focal_point
entity(entity src, vector org) spawn_info_focal_point;
void(entity e) info_focal_point_init;
void() info_focal_point;

//------------------------------------------------------------------------------

/*QUAKED info_movie_camera (.5 .5 .5) (-8 -8 -8) (8 8 32) X X X X X X X X NOT_ON_EASY NOT_ON_NORMAL NOT_ON_HARD_OR_NIGHTMARE NOT_IN_DEATHMATCH NOT_IN_COOP NOT_IN_SINGLEPLAYER X NOT_ON_HARD_ONLY NOT_ON_NIGHTMARE_ONLY
This is the destination marker for a camera. It should have a "targetname"
field with the same value as a camera-trigger's "target" field.
*/
//----------------------------------------------------------------------
// class info_movie_camera: base_mapentity
// {
//--------------------------------------------------------------
void() info_movie_camera_touch =
{
local string temps;

if (other.classname != "camera")
return;

temps = self.target;
self.target = self.message;
sub_usetargets ();
self.target = temps;
if (self.cnt)
return;

self.nextthink = time + 10;
self.solid = SOLID_NOT;
};

//--------------------------------------------------------------
entity(entity src, vector org) spawn_info_movie_camera =
{
local entity e = spawn ();
e.owner = src;
e.origin = org;
info_movie_camera_init (e);
return e;
};

//--------------------------------------------------------------
void(entity e) info_movie_camera_init =
{
// this does nothing, just serves as a target spot
base_mapentity_init (e);
// ...more than a spot in Zer mode.
e.classname = "info_movie_camera";
e.classtype = CT_INFO_MOVIE_CAMERA;
e.solid = SOLID_TRIGGER;
e.think = sub_remove;
e.touch = info_movie_camera_touch;
// e.use = sub_null;
setorigin (e, e.origin);
setsize (e, '-8 -8 -8', '8 8 8');
};

//--------------------------------------------------------------
void() info_movie_camera =
{
// new spawnflags for all entities -- iw
if (SUB_Inhibit())
return;

info_movie_camera_init (self);
};
// };

/*QUAKED info_focal_point (.5 .5 .5) (-8 -8 -8) (8 8 32) X X X X X X X X NOT_ON_EASY NOT_ON_NORMAL NOT_ON_HARD_OR_NIGHTMARE NOT_IN_DEATHMATCH NOT_IN_COOP NOT_IN_SINGLEPLAYER X NOT_ON_HARD_ONLY NOT_ON_NIGHTMARE_ONLY
This is the point that the camera will face. It should have a "targetname"
field with the same value as a camera-trigger's "focal_point" field.
*/
//----------------------------------------------------------------------
// class info_focal_point: base_mapentity
// {
// PM: This entity is kept only for map compatibility reasons.
// Otherwise, this entity is redundant. Use 'info_notnull'
// instead.

// just holds a spot for the focal point.

//--------------------------------------------------------------
entity(entity src, vector org) spawn_info_focal_point =
{
local entity e = spawn ();
e.owner = src;
e.origin = org;
info_focal_point_init (e);
return e;
};

//--------------------------------------------------------------
void(entity e) info_focal_point_init =
{
base_mapentity_init (e);
e.classname = "info_focal_point";
e.classtype = CT_INFO_FOCAL_POINT;
};

//--------------------------------------------------------------
void() info_focal_point =
{
// new spawnflags for all entities -- iw
if (SUB_Inhibit())
return;

info_focal_point_init (self);
};
// };

Return to the top of this page or return to the overview of this repo.

Log camera.qc

Date Commit Message Author + -
2024-03-24 2nd pass refactor, rework QC class structure cev +86 -35
2024-02-18 Client/player, projectiles, entrypoints refactor cev +2 -2
2024-01-31 Class based monster refactor & start projectiles cev +1 -1
2024-01-09 Continue OO / Class-based refactor cev +18 -12
2023-12-09 Start OO / class-based refactor, work on items cev +68  

Return to the top of this page or return to the overview of this repo.