mirror of
https://github.com/UberGames/EF2GameSource.git
synced 2024-11-10 06:31:42 +00:00
69 lines
1.5 KiB
C++
69 lines
1.5 KiB
C++
//-----------------------------------------------------------------------------
|
|
//
|
|
// $Logfile:: /Code/DLLs/game/decals.cpp $
|
|
// $Revision:: 7 $
|
|
// $Author:: Steven $
|
|
// $Date:: 3/19/03 6:10p $
|
|
//
|
|
// Copyright (C) 1998 by Ritual Entertainment, Inc.
|
|
// All rights reserved.
|
|
//
|
|
// This source may not be distributed and/or modified without
|
|
// expressly written permission by Ritual Entertainment, Inc.
|
|
//
|
|
//
|
|
// DESCRIPTION:
|
|
// Decal entities
|
|
|
|
#include "_pch_cpp.h"
|
|
#include "decals.h"
|
|
|
|
|
|
CLASS_DECLARATION( Entity, Decal, NULL )
|
|
{
|
|
{ NULL, NULL }
|
|
};
|
|
|
|
Decal::Decal()
|
|
{
|
|
edict->s.eType = ET_DECAL;
|
|
edict->s.modelindex = 1; // must be non-zero
|
|
|
|
if ( !LoadingSavegame )
|
|
{
|
|
PostEvent( EV_Remove, FRAMETIME );
|
|
}
|
|
}
|
|
|
|
void Decal::setDirection( const Vector &dir )
|
|
{
|
|
edict->s.surfaces[0] = DirToByte( ( Vector )dir );
|
|
}
|
|
|
|
void Decal::setShader( const str &decal_shader )
|
|
{
|
|
str temp_shader;
|
|
|
|
shader = decal_shader;
|
|
edict->s.tag_num = gi.imageindex( shader.c_str() );
|
|
|
|
temp_shader = shader + ".spr";
|
|
CacheResource( temp_shader, this );
|
|
}
|
|
|
|
void Decal::setOrientation( const str ° )
|
|
{
|
|
Vector ang;
|
|
|
|
if ( !deg.icmp( "random" ) )
|
|
ang[2] = random() * 360.0f;
|
|
else
|
|
ang[2] = (float)atof( deg );
|
|
|
|
setAngles( ang );
|
|
}
|
|
|
|
void Decal::setRadius( float rad )
|
|
{
|
|
edict->s.scale = rad;
|
|
}
|