Nuclide
Software Development Kit for id Technology (BETA)
Zone.h
1/*
2 * Copyright (c) 2022 Marco Cawthorne <marco@icculus.org>
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
17/*QUAKED ncZone (0 0 0.8) (-16 -16 -36) (16 16 36)
18
19Describes an area's bounds and description/name.
20
21# KEYS
22"targetname" : Name
23"areaname" : Name of the specified area
24"mins" : Mins of the area's bounding box
25"maxs" : Maxs of the area's bounding box
26*/
27class
29{
30public:
31 void ncZone(void);
32
33 nonvirtual ncZone CreateZoneBoundsWithDescription(vector minBox, vector maxBox, string zoneDescription);
34 nonvirtual ncZone CreateZoneWithDescription(vector positionCoord, string zoneDescription);
35 nonvirtual void ExpandZoneFromPoint(vector pointPosition);
36 nonvirtual void LimitedZoneFromPoint(vector pointLocation, float limitedSize);
37
38 /* overrides */
39 virtual void Respawn(void);
40 virtual void SpawnKey(string,string);
41 virtual void Touch(entity);
42
43private:
44 string m_strDescription;
45};
46
47void
49{
50 m_strDescription = __NULL__;
51}
This entity class represents point-entity triggers.
Definition: PointTrigger.h:26
Definition: Zone.h:29
void ncZone(void)
Definition: Zone.h:48