ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/common/links.C
Revision: 1.12
Committed: Thu Jan 8 03:03:23 2009 UTC (15 years, 4 months ago) by root
Content type: text/plain
Branch: MAIN
CVS Tags: rel-2_80, rel-2_76, rel-2_77, rel-2_75, rel-2_79, rel-2_78
Changes since 1.11: +5 -3 lines
Log Message:
connected => shstr, beginning of mapscript

File Contents

# User Rev Content
1 elmex 1.1 /*
2 root 1.10 * This file is part of Deliantra, the Roguelike Realtime MMORPG.
3 pippijn 1.6 *
4 root 1.11 * Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team
5 root 1.8 * Copyright (©) 1992,2007 Frank Tore Johansen
6 pippijn 1.6 *
7 root 1.10 * Deliantra is free software: you can redistribute it and/or modify
8 root 1.9 * it under the terms of the GNU General Public License as published by
9     * the Free Software Foundation, either version 3 of the License, or
10     * (at your option) any later version.
11 root 1.8 *
12 root 1.9 * This program is distributed in the hope that it will be useful,
13     * but WITHOUT ANY WARRANTY; without even the implied warranty of
14     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15     * GNU General Public License for more details.
16 root 1.8 *
17 root 1.9 * You should have received a copy of the GNU General Public License
18     * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 root 1.8 *
20 root 1.10 * The authors can be reached via e-mail to <support@deliantra.net>
21 pippijn 1.6 */
22 root 1.8
23 elmex 1.1 #include <global.h>
24    
25     /*
26     * Allocates a new objectlink structure, initialises it, and returns
27     * a pointer to it.
28     */
29    
30 root 1.2 objectlink *
31     get_objectlink (void)
32     {
33 root 1.4 objectlink *ol = new objectlink;
34 root 1.2
35 root 1.12 ol->ob = 0;
36 root 1.4 ol->next = 0;
37 root 1.12
38 elmex 1.1 return ol;
39     }
40    
41     /*
42     * Allocates a new oblinkpt structure, initialises it, and returns
43     * a pointer to it.
44     */
45    
46 root 1.2 oblinkpt *
47     get_objectlinkpt (void)
48     {
49 root 1.4 oblinkpt *obp = new oblinkpt;
50 root 1.2
51 root 1.4 obp->link = 0;
52     obp->next = 0;
53 root 1.12
54 elmex 1.1 return obp;
55     }
56    
57     /*
58     * Recursively frees all objectlinks
59     */
60    
61 root 1.2 void
62 root 1.12 free_objectlink (objectlink *ol)
63 root 1.2 {
64 elmex 1.1 if (ol->next)
65 root 1.2 free_objectlink (ol->next);
66 root 1.4
67     delete ol;
68 elmex 1.1 }
69    
70     /*
71     * Recursively frees all linked list of objectlink pointers
72     */
73    
74 root 1.2 void
75 root 1.4 free_objectlinkpt (oblinkpt *obp)
76 root 1.2 {
77 elmex 1.1 if (obp->next)
78 root 1.2 free_objectlinkpt (obp->next);
79 root 1.4
80 elmex 1.1 if (obp->link)
81 root 1.2 free_objectlink (obp->link);
82 root 1.4
83     delete obp;
84 elmex 1.1 }
85 root 1.12