Crossfire Server, Trunk
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
o
p
r
s
t
u
v
w
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
i
j
k
m
n
o
p
r
s
t
u
v
Enumerations
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
Data Fields
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Enumerations
Enumerator
Properties
a
b
c
d
e
f
h
i
j
k
l
m
n
p
q
r
s
t
y
Related Functions
:
b
d
o
s
w
Files
File List
Globals
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
w
y
z
Typedefs
a
c
d
e
f
i
j
k
l
m
n
o
p
q
s
t
y
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
FaceWriter.cpp
Go to the documentation of this file.
1
/*
2
* Crossfire -- cooperative multi-player graphical RPG and adventure game
3
*
4
* Copyright (c) 2020 the Crossfire Development Team
5
*
6
* Crossfire is free software and comes with ABSOLUTELY NO WARRANTY. You are
7
* welcome to redistribute it under certain conditions. For details, please
8
* see COPYING and LICENSE.
9
*
10
* The authors can be reached via e-mail at <crossfire@metalforge.org>.
11
*/
12
13
#include "
FaceWriter.h
"
14
15
void
FaceWriter::write
(
const
Face
*face,
StringBuffer
*
buf
) {
16
/* No need to write faces with no specific information */
17
if
(face->
visibility
== 0 && face->
magicmap
== 0) {
18
if
(face->
smoothface
) {
19
stringbuffer_append_printf
(
buf
,
"smoothface %s %s\n"
, face->
name
, face->
smoothface
->
name
);
20
}
21
return
;
22
}
23
stringbuffer_append_printf
(
buf
,
"face %s\n"
, face->
name
);
24
if
(face->
visibility
) {
25
stringbuffer_append_printf
(
buf
,
"visibility %d\n"
, face->
visibility
);
26
}
27
if
(face->
magicmap
&
FACE_FLOOR
) {
28
stringbuffer_append_string
(
buf
,
"is_floor 1\n"
);
29
}
30
if
(face->
magicmap
& (~
FACE_FLOOR
)) {
31
stringbuffer_append_printf
(
buf
,
"magicmap %s\n"
,
get_colorname
(face->
magicmap
& (~
FACE_FLOOR
)));
32
}
33
if
(face->
smoothface
) {
34
stringbuffer_append_printf
(
buf
,
"smoothface %s\n"
, face->
smoothface
->
name
);
35
}
36
stringbuffer_append_string
(
buf
,
"end\n"
);
37
}
Face::name
sstring name
Definition:
face.h:19
Face
Definition:
face.h:14
Face::smoothface
Face * smoothface
Definition:
face.h:18
stringbuffer_append_printf
void stringbuffer_append_printf(StringBuffer *sb, const char *format,...)
Definition:
stringbuffer.cpp:138
get_colorname
const char * get_colorname(uint8_t index)
Definition:
image.cpp:86
FaceWriter.h
buf
StringBuffer * buf
Definition:
readable.cpp:1565
FACE_FLOOR
#define FACE_FLOOR
Definition:
newclient.h:306
stringbuffer_append_string
void stringbuffer_append_string(StringBuffer *sb, const char *str)
Definition:
stringbuffer.cpp:95
StringBuffer
Definition:
stringbuffer.cpp:25
Face::visibility
uint8_t visibility
Definition:
face.h:16
Face::magicmap
uint8_t magicmap
Definition:
face.h:17
FaceWriter::write
virtual void write(const Face *face, StringBuffer *buf)
Definition:
FaceWriter.cpp:15
crossfire-crossfire-server
common
assets
FaceWriter.cpp
Generated by
1.8.17