Nuclide
Software Development Kit for id Technology (BETA)
Attack.h
1/*
2 * Copyright (c) 2016-2024 Vera Visions LLC.
3 *
4 * Permission to use, copy, modify, and distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
13 * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
14 * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15*/
16
36{
37public:
38 void ncAttack(void);
39
40#ifdef SERVER
41 /* launch the attack into the world */
42 virtual void Launch(vector, vector, float, float, float);
43
44 nonvirtual void SetWeaponOwner(ncWeapon);
45 nonvirtual ncWeapon GetWeaponOwner(void);
46#endif
47
48#ifdef SERVER
49private:
50 ncWeapon m_weaponOwner;
51#endif
52};
53
54#ifdef SERVER
55ncAttack ncAttack_SpawnDef(string entityDef, ncActor theOwner);
56ncAttack ncAttack_SpawnDefAtPosition(string entityDef, ncActor theOwner, vector vecOrigin, vector vecAngles);
57ncAttack ncAttack_SpawnDefAttachment(string entityDef, ncActor theOwner, int attachmentID);
58#endif
This entity class represents an object with choreographed/free-form movement.
Definition: Actor.h:93
This entity class represents an attack.
Definition: Attack.h:36
virtual void Launch(vector, vector, float, float, float)
Definition: Attack.qc:67
nonvirtual void SetWeaponOwner(ncWeapon)
Definition: Attack.qc:27
nonvirtual ncWeapon GetWeaponOwner(void)
Definition: Attack.qc:33
void ncAttack(void)
Definition: Attack.qc:18
This entity represents an ncRenderableEntity with interactive surface properties.
Definition: SurfacePropEntity.h:70
This entity class represents weapon based items.
Definition: Weapon.h:300
entityDefAPI_t entityDef
Access entityDefAPI_t functions using this variable.
Definition: api.h:436