Crossfire Server, Trunk
clock.cpp
Go to the documentation of this file.
1
/*
2
CrossFire, A Multiplayer game for X-windows
3
4
Copyright (C) 2007 Mark Wedel & Crossfire Development Team
5
Copyright (C) 1992 Frank Tore Johansen
6
7
This program is free software; you can redistribute it and/or modify
8
it under the terms of the GNU General Public License as published by
9
the Free Software Foundation; either version 2 of the License, or
10
(at your option) any later version.
11
12
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
17
You should have received a copy of the GNU General Public License
18
along with this program; if not, write to the Free Software
19
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20
21
The authors can be reached via e-mail at crossfire-devel@real-time.com
22
*/
27
#include <
global.h
>
28
#include <
ob_methods.h
>
29
#include <
ob_types.h
>
30
#include <
sounds.h
>
31
#include <
sproto.h
>
32
33
static
method_ret
clock_type_apply
(
object
*
op
,
object
*applier,
int
aflags);
34
38
void
init_type_clock
(
void
) {
39
register_apply
(
CLOCK
,
clock_type_apply
);
40
}
41
50
static
method_ret
clock_type_apply
(
object
*
op
,
object
*applier,
int
aflags) {
51
(
void
)aflags;
52
if
(applier->
type
==
PLAYER
) {
53
timeofday_t
tod;
54
char
buf1[128];
55
56
get_tod
(&tod);
57
play_sound_player_only
(applier->
contr
,
SOUND_TYPE_ITEM
,
op
, 0,
"tick"
);
58
draw_ext_info_format
(
NDI_UNIQUE
, 0, applier,
MSG_TYPE_APPLY
,
MSG_TYPE_APPLY_SUCCESS
,
59
"It is %s"
,
time_format_time
(&tod, buf1,
sizeof
(buf1)));
60
return
METHOD_OK
;
61
}
62
return
METHOD_UNHANDLED
;
63
}
PLAYER
@ PLAYER
Definition:
object.h:112
global.h
SOUND_TYPE_ITEM
#define SOUND_TYPE_ITEM
Definition:
newclient.h:338
clock_type_apply
static method_ret clock_type_apply(object *op, object *applier, int aflags)
Definition:
clock.cpp:50
register_apply
void register_apply(int ob_type, apply_func method)
Definition:
ob_types.cpp:62
METHOD_OK
#define METHOD_OK
Definition:
ob_methods.h:15
timeofday_t
Definition:
tod.h:38
draw_ext_info_format
void draw_ext_info_format(int flags, int pri, const object *pl, uint8_t type, uint8_t subtype, const char *format,...) PRINTF_ARGS(6
play_sound_player_only
void play_sound_player_only(player *pl, int8_t sound_type, object *emitter, int dir, const char *action)
Definition:
sounds.cpp:51
get_tod
void get_tod(timeofday_t *tod)
Definition:
time.cpp:219
time_format_time
const char * time_format_time(const timeofday_t *tod, char *buf, size_t bufsize)
Definition:
time.cpp:369
METHOD_UNHANDLED
#define METHOD_UNHANDLED
Definition:
ob_methods.h:16
object::contr
struct player * contr
Definition:
object.h:284
MSG_TYPE_APPLY_SUCCESS
#define MSG_TYPE_APPLY_SUCCESS
Definition:
newclient.h:606
object::type
uint8_t type
Definition:
object.h:348
sproto.h
init_type_clock
void init_type_clock(void)
Definition:
clock.cpp:38
nlohmann::detail::void
j template void())
Definition:
json.hpp:4099
CLOCK
@ CLOCK
Definition:
object.h:120
method_ret
char method_ret
Definition:
ob_methods.h:14
ob_types.h
sounds.h
NDI_UNIQUE
#define NDI_UNIQUE
Definition:
newclient.h:265
give.op
op
Definition:
give.py:33
ob_methods.h
MSG_TYPE_APPLY
#define MSG_TYPE_APPLY
Definition:
newclient.h:411
crossfire-crossfire-server
types
clock
clock.cpp
Generated by
1.8.17