Crossfire Server, Trunk
newclient.h
Go to the documentation of this file.
1
14
#ifndef NEWCLIENT_H
15
#define NEWCLIENT_H
16
25
#define MAXSOCKBUF (2+65535+1)
26
32
#define MAP2_COORD_OFFSET 15
33
42
#define MAP2_TYPE_CLEAR 0x0
43
#define MAP2_TYPE_DARKNESS 0x1
44
/*
45
* These next two are not used presently, but the numbers are set aside for
46
* when support is added.
47
*
48
* #define MAP2_TYPE_SOUND 0x2
49
* #define MAP2_TYPE_LIGHTSOURCE 0x3
50
*/
53
#define MAP2_LAYER_START 0x10
54
55
#define CS_QUERY_YESNO 0x1
56
#define CS_QUERY_SINGLECHAR 0x2
57
#define CS_QUERY_HIDEINPUT 0x4
59
#define CS_SAY_NORMAL 0x1
60
#define CS_SAY_SHOUT 0x2
61
#define CS_SAY_GSAY 0x4
68
#define FLOAT_MULTI 100000
69
#define FLOAT_MULTF 100000.0
70
76
#define CS_STAT_HP 1
77
#define CS_STAT_MAXHP 2
78
#define CS_STAT_SP 3
79
#define CS_STAT_MAXSP 4
80
#define CS_STAT_STR 5
81
#define CS_STAT_INT 6
82
#define CS_STAT_WIS 7
83
#define CS_STAT_DEX 8
84
#define CS_STAT_CON 9
85
#define CS_STAT_CHA 10
86
#define CS_STAT_EXP 11
87
#define CS_STAT_LEVEL 12
88
#define CS_STAT_WC 13
89
#define CS_STAT_AC 14
90
#define CS_STAT_DAM 15
91
#define CS_STAT_ARMOUR 16
92
#define CS_STAT_SPEED 17
93
#define CS_STAT_FOOD 18
94
#define CS_STAT_WEAP_SP 19
95
#define CS_STAT_RANGE 20
96
#define CS_STAT_TITLE 21
97
#define CS_STAT_POW 22
98
#define CS_STAT_GRACE 23
99
#define CS_STAT_MAXGRACE 24
100
#define CS_STAT_FLAGS 25
101
#define CS_STAT_WEIGHT_LIM 26
102
#define CS_STAT_EXP64 28
103
#define CS_STAT_SPELL_ATTUNE 29
104
#define CS_STAT_SPELL_REPEL 30
105
#define CS_STAT_SPELL_DENY 31
106
#define CS_STAT_RACE_STR 32
107
#define CS_STAT_RACE_INT 33
108
#define CS_STAT_RACE_WIS 34
109
#define CS_STAT_RACE_DEX 35
110
#define CS_STAT_RACE_CON 36
111
#define CS_STAT_RACE_CHA 37
112
#define CS_STAT_RACE_POW 38
113
#define CS_STAT_BASE_STR 39
114
#define CS_STAT_BASE_INT 40
115
#define CS_STAT_BASE_WIS 41
116
#define CS_STAT_BASE_DEX 42
117
#define CS_STAT_BASE_CON 43
118
#define CS_STAT_BASE_CHA 44
119
#define CS_STAT_BASE_POW 45
120
#define CS_STAT_APPLIED_STR 46
121
#define CS_STAT_APPLIED_INT 47
122
#define CS_STAT_APPLIED_WIS 48
123
#define CS_STAT_APPLIED_DEX 49
124
#define CS_STAT_APPLIED_CON 50
125
#define CS_STAT_APPLIED_CHA 51
126
#define CS_STAT_APPLIED_POW 52
127
#define CS_STAT_GOLEM_HP 53
128
#define CS_STAT_GOLEM_MAXHP 54
129
#define CS_STAT_CHARACTER_FLAGS 55
130
#define CS_STAT_GOD_NAME 56
131
#define CS_STAT_OVERLOAD 57
132
#define CS_STAT_ITEM_POWER 58
134
#define CS_STAT_RESIST_START 100
135
#define CS_STAT_RESIST_END 117
137
#define CS_STAT_RES_PHYS 100
138
#define CS_STAT_RES_MAG 101
139
#define CS_STAT_RES_FIRE 102
140
#define CS_STAT_RES_ELEC 103
141
#define CS_STAT_RES_COLD 104
142
#define CS_STAT_RES_CONF 105
143
#define CS_STAT_RES_ACID 106
144
#define CS_STAT_RES_DRAIN 107
145
#define CS_STAT_RES_GHOSTHIT 108
146
#define CS_STAT_RES_POISON 109
147
#define CS_STAT_RES_SLOW 110
148
#define CS_STAT_RES_PARA 111
149
#define CS_STAT_TURN_UNDEAD 112
150
#define CS_STAT_RES_FEAR 113
151
#define CS_STAT_RES_DEPLETE 114
152
#define CS_STAT_RES_DEATH 115
153
#define CS_STAT_RES_HOLYWORD 116
154
#define CS_STAT_RES_BLIND 117
155
161
#define CS_STAT_SKILLINFO 140
162
168
#define CS_NUM_SKILLS 50
169
178
#define SF_FIREON 0x01
179
#define SF_RUNON 0x02
180
186
// readied skill
187
#define CF_CONFUSED 0x01
188
#define CF_POISONED 0x02
189
#define CF_BLIND 0x04
190
#define CF_XRAY 0x08
191
#define CF_DISEASED 0x10
192
#define CF_NOT_PERFECT 0x20
193
#define CF_HOSTILE 0x40
194
#define CF_STEALTHY 0x80
195
#define CF_PARALYZED 0x0100
196
#define CF_WIZARD 0x0200
198
199
206
#define ACL_NAME 1
207
#define ACL_CLASS 2
208
#define ACL_RACE 3
209
#define ACL_LEVEL 4
210
#define ACL_FACE 5
211
#define ACL_PARTY 6
212
#define ACL_MAP 7
213
#define ACL_FACE_NUM 8
214
231
#define NDI_BLACK 0
232
#define NDI_WHITE 1
233
#define NDI_NAVY 2
234
#define NDI_RED 3
235
#define NDI_ORANGE 4
236
#define NDI_BLUE 5
237
#define NDI_DK_ORANGE 6
238
#define NDI_GREEN 7
239
#define NDI_LT_GREEN 8
241
#define NDI_GREY 9
242
#define NDI_BROWN 10
243
#define NDI_GOLD 11
244
#define NDI_TAN 12
245
#define NDI_MAX_COLOR 12
247
#define NDI_COLOR_MASK 0xff
251
#define NDI_UNIQUE 0x100
252
#define NDI_ALL 0x200
253
#define NDI_ALL_DMS 0x400
255
#define NDI_NO_TRANSLATE 0x800
258
#define NDI_DELAYED 0x1000
265
266
270
enum
{
a_none
,
a_readied
,
a_wielded
,
a_worn
,
a_active
,
a_applied
};
271
272
#define F_APPLIED 0x000F
273
#define F_UNIDENTIFIED 0x0010
274
#define F_UNPAID 0x0200
275
#define F_MAGIC 0x0400
276
#define F_CURSED 0x0800
277
#define F_DAMNED 0x1000
278
#define F_OPEN 0x2000
279
#define F_NOPICK 0x4000
280
#define F_LOCKED 0x8000
281
#define F_BLESSED 0x0100
282
#define F_READ 0x0020
283
292
#define FACE_FLOOR 0x80
293
#define FACE_WALL 0x40
295
#define FACE_COLOR_MASK 0xf
296
303
#define UPD_LOCATION 0x01
304
#define UPD_FLAGS 0x02
305
#define UPD_WEIGHT 0x04
306
#define UPD_FACE 0x08
307
#define UPD_NAME 0x10
308
#define UPD_ANIM 0x20
309
#define UPD_ANIMSPEED 0x40
310
#define UPD_NROF 0x80
311
#define UPD_ALL 0xFF
312
313
#define UPD_SP_MANA 0x01
314
#define UPD_SP_GRACE 0x02
315
#define UPD_SP_DAMAGE 0x04
317
318
322
#define SOUND_TYPE_LIVING 1
323
#define SOUND_TYPE_SPELL 2
324
#define SOUND_TYPE_ITEM 3
325
#define SOUND_TYPE_GROUND 4
326
#define SOUND_TYPE_HIT 5
327
#define SOUND_TYPE_HIT_BY 6
328
335
#define FACE_IS_ANIM 1<<15
336
#define ANIM_RANDOM 1<<13
337
#define ANIM_SYNC 2<<13
338
339
#define ANIM_FLAGS_MASK 0x6000
345
#define ANIM_MASK 0x1fff
346
362
#define EMI_NOREDRAW 0x01
363
366
#define EMI_SMOOTH 0x02
367
372
#define EMI_HASMOREBITS 0x80
373
375
/*
376
* Note!
377
* When adding message types, don't forget to keep the client up to date too!
378
*/
379
384
#define MSG_TYPE_BOOK 1
385
#define MSG_TYPE_CARD 2
386
#define MSG_TYPE_PAPER 3
387
#define MSG_TYPE_SIGN 4
388
#define MSG_TYPE_MONUMENT 5
389
#define MSG_TYPE_DIALOG 6
390
#define MSG_TYPE_MOTD 7
391
#define MSG_TYPE_ADMIN 8
392
#define MSG_TYPE_SHOP 9
393
#define MSG_TYPE_COMMAND 10
394
#define MSG_TYPE_ATTRIBUTE 11
396
#define MSG_TYPE_SKILL 12
397
#define MSG_TYPE_APPLY 13
398
#define MSG_TYPE_ATTACK 14
399
#define MSG_TYPE_COMMUNICATION 15
400
#define MSG_TYPE_SPELL 16
401
#define MSG_TYPE_ITEM 17
402
#define MSG_TYPE_MISC 18
404
#define MSG_TYPE_VICTIM 19
406
#define MSG_TYPE_CLIENT 20
407
#define MSG_TYPE_LAST 21
408
409
#define MSG_SUBTYPE_NONE 0
410
411
/* book messages subtypes */
412
#define MSG_TYPE_BOOK_CLASP_1 1
413
#define MSG_TYPE_BOOK_CLASP_2 2
414
#define MSG_TYPE_BOOK_ELEGANT_1 3
415
#define MSG_TYPE_BOOK_ELEGANT_2 4
416
#define MSG_TYPE_BOOK_QUARTO_1 5
417
#define MSG_TYPE_BOOK_QUARTO_2 6
418
#define MSG_TYPE_BOOK_SPELL_EVOKER 7
419
#define MSG_TYPE_BOOK_SPELL_PRAYER 8
420
#define MSG_TYPE_BOOK_SPELL_PYRO 9
421
#define MSG_TYPE_BOOK_SPELL_SORCERER 10
422
#define MSG_TYPE_BOOK_SPELL_SUMMONER 11
423
424
/* card messages subtypes*/
425
#define MSG_TYPE_CARD_SIMPLE_1 1
426
#define MSG_TYPE_CARD_SIMPLE_2 2
427
#define MSG_TYPE_CARD_SIMPLE_3 3
428
#define MSG_TYPE_CARD_ELEGANT_1 4
429
#define MSG_TYPE_CARD_ELEGANT_2 5
430
#define MSG_TYPE_CARD_ELEGANT_3 6
431
#define MSG_TYPE_CARD_STRANGE_1 7
432
#define MSG_TYPE_CARD_STRANGE_2 8
433
#define MSG_TYPE_CARD_STRANGE_3 9
434
#define MSG_TYPE_CARD_MONEY_1 10
435
#define MSG_TYPE_CARD_MONEY_2 11
436
#define MSG_TYPE_CARD_MONEY_3 12
437
438
/* Paper messages subtypes */
439
#define MSG_TYPE_PAPER_NOTE_1 1
440
#define MSG_TYPE_PAPER_NOTE_2 2
441
#define MSG_TYPE_PAPER_NOTE_3 3
442
#define MSG_TYPE_PAPER_LETTER_OLD_1 4
443
#define MSG_TYPE_PAPER_LETTER_OLD_2 5
444
#define MSG_TYPE_PAPER_LETTER_NEW_1 6
445
#define MSG_TYPE_PAPER_LETTER_NEW_2 7
446
#define MSG_TYPE_PAPER_ENVELOPE_1 8
447
#define MSG_TYPE_PAPER_ENVELOPE_2 9
448
#define MSG_TYPE_PAPER_SCROLL_OLD_1 10
449
#define MSG_TYPE_PAPER_SCROLL_OLD_2 11
450
#define MSG_TYPE_PAPER_SCROLL_NEW_1 12
451
#define MSG_TYPE_PAPER_SCROLL_NEW_2 13
452
#define MSG_TYPE_PAPER_SCROLL_MAGIC 14
453
454
/* road signs messages subtypes */
/* Including magic mouths */
455
#define MSG_TYPE_SIGN_BASIC 1
456
#define MSG_TYPE_SIGN_DIR_LEFT 2
457
#define MSG_TYPE_SIGN_DIR_RIGHT 3
458
#define MSG_TYPE_SIGN_DIR_BOTH 4
459
#define MSG_TYPE_SIGN_MAGIC_MOUTH 5
460
461
/* stones and monument messages */
462
#define MSG_TYPE_MONUMENT_STONE_1 1
463
#define MSG_TYPE_MONUMENT_STONE_2 2
464
#define MSG_TYPE_MONUMENT_STONE_3 3
465
#define MSG_TYPE_MONUMENT_STATUE_1 4
466
#define MSG_TYPE_MONUMENT_STATUE_2 5
467
#define MSG_TYPE_MONUMENT_STATUE_3 6
468
#define MSG_TYPE_MONUMENT_GRAVESTONE_1 7
469
#define MSG_TYPE_MONUMENT_GRAVESTONE_2 8
470
#define MSG_TYPE_MONUMENT_GRAVESTONE_3 9
471
#define MSG_TYPE_MONUMENT_WALL_1 10
472
#define MSG_TYPE_MONUMENT_WALL_2 11
473
#define MSG_TYPE_MONUMENT_WALL_3 12
474
475
/* dialog message */
476
#define MSG_TYPE_DIALOG_NPC 1
477
#define MSG_TYPE_DIALOG_ALTAR 2
478
#define MSG_TYPE_DIALOG_MAGIC_EAR 3
480
/* MOTD doesn't have any subtypes */
481
482
/* admin/global messages */
483
#define MSG_TYPE_ADMIN_RULES 1
484
#define MSG_TYPE_ADMIN_NEWS 2
485
#define MSG_TYPE_ADMIN_PLAYER 3
486
#define MSG_TYPE_ADMIN_DM 4
487
#define MSG_TYPE_ADMIN_HISCORE 5
488
#define MSG_TYPE_ADMIN_LOADSAVE 6
489
#define MSG_TYPE_ADMIN_LOGIN 7
490
#define MSG_TYPE_ADMIN_VERSION 8
491
#define MSG_TYPE_ADMIN_ERROR 9
492
/*
493
* I'm not actually expecting anything to make much use of the MSG_TYPE_SHOP
494
* values However, to use the media tags, need to use draw_ext_info, and need
495
* to have a type/subtype, so figured might as well put in real values here.
496
*/
497
#define MSG_TYPE_SHOP_LISTING 1
499
#define MSG_TYPE_SHOP_PAYMENT 2
501
#define MSG_TYPE_SHOP_SELL 3
502
#define MSG_TYPE_SHOP_MISC 4
503
/*
504
* Basically, 1 subtype/command. Like shops, not expecting much to be done,
505
* but by having different subtypes, it makes it easier for client to store
506
* way information (eg, who output)
507
*/
508
#define MSG_TYPE_COMMAND_WHO 1
509
#define MSG_TYPE_COMMAND_MAPS 2
510
#define MSG_TYPE_COMMAND_BODY 3
511
#define MSG_TYPE_COMMAND_MALLOC 4
512
#define MSG_TYPE_COMMAND_WEATHER 5
513
#define MSG_TYPE_COMMAND_STATISTICS 6
514
#define MSG_TYPE_COMMAND_CONFIG 7
515
#define MSG_TYPE_COMMAND_INFO 8
516
#define MSG_TYPE_COMMAND_QUESTS 9
517
#define MSG_TYPE_COMMAND_DEBUG 10
518
#define MSG_TYPE_COMMAND_ERROR 11
519
#define MSG_TYPE_COMMAND_SUCCESS 12
520
#define MSG_TYPE_COMMAND_FAILURE 13
521
#define MSG_TYPE_COMMAND_EXAMINE 14
522
#define MSG_TYPE_COMMAND_INVENTORY 15
523
#define MSG_TYPE_COMMAND_HELP 16
524
#define MSG_TYPE_COMMAND_DM 17
525
#define MSG_TYPE_COMMAND_NEWPLAYER 18
530
/* This is somewhat verbose. If the client ends up being able to
531
* choose various attributes based on message type, I think it is important
532
* for the client to know if this is a benefit or detriment to the player.
533
* In the case of losing a bonus, this typically indicates a spell has
534
* ended, which is probably more important (and should be displayed more
535
* prominently) than when you cast the spell
536
*/
537
538
#define MSG_TYPE_ATTRIBUTE_ATTACKTYPE_GAIN 1
539
#define MSG_TYPE_ATTRIBUTE_ATTACKTYPE_LOSS 2
544
#define MSG_TYPE_ATTRIBUTE_PROTECTION_GAIN 3
545
#define MSG_TYPE_ATTRIBUTE_PROTECTION_LOSS 4
551
#define MSG_TYPE_ATTRIBUTE_MOVE 5
553
#define MSG_TYPE_ATTRIBUTE_RACE 6
554
#define MSG_TYPE_ATTRIBUTE_BAD_EFFECT_START 7
556
#define MSG_TYPE_ATTRIBUTE_BAD_EFFECT_END 8
557
#define MSG_TYPE_ATTRIBUTE_STAT_GAIN 9
558
#define MSG_TYPE_ATTRIBUTE_STAT_LOSS 10
559
#define MSG_TYPE_ATTRIBUTE_LEVEL_GAIN 11
560
#define MSG_TYPE_ATTRIBUTE_LEVEL_LOSS 12
561
#define MSG_TYPE_ATTRIBUTE_GOOD_EFFECT_START 13
563
#define MSG_TYPE_ATTRIBUTE_GOOD_EFFECT_END 14
564
#define MSG_TYPE_ATTRIBUTE_GOD 15
566
/* I think one type/skill is overkill, so instead, use broader categories
567
* for these messages.
568
* The difference in ERROR vs FAILURE is basically this: ERROR indicates
569
* something wasn't right to even attempt to use the skill (don't have
570
* needed object, or haven't marked objects, etc).
571
* FAILURE indicates that player attempted to use the skill, but it
572
* didn't work.
573
* PRAY is listed out because praying over altars can generate some
574
* messages not really related to the skill itself.
575
*/
576
#define MSG_TYPE_SKILL_MISSING 1
577
#define MSG_TYPE_SKILL_ERROR 2
578
#define MSG_TYPE_SKILL_SUCCESS 3
579
#define MSG_TYPE_SKILL_FAILURE 4
580
#define MSG_TYPE_SKILL_PRAY 5
581
#define MSG_TYPE_SKILL_LIST 6
583
/* Messages related to applying objects. Note that applying many objects may
584
* generate MSG_TYPE_ATTRIBUTE messages - the APPLY here more directly related
585
* to the direct messages related to applying them (you put on your armor, you
586
* apply scroll, etc). The ERROR is like that for SKILLS - something prevent
587
* even trying to apply the object. FAILURE indicates result wasn't
588
* successful.
589
*/
590
#define MSG_TYPE_APPLY_ERROR 1
591
#define MSG_TYPE_APPLY_UNAPPLY 2
592
#define MSG_TYPE_APPLY_SUCCESS 3
593
#define MSG_TYPE_APPLY_FAILURE 4
594
#define MSG_TYPE_APPLY_CURSED 5
595
#define MSG_TYPE_APPLY_TRAP 6
596
#define MSG_TYPE_APPLY_BADBODY 7
597
#define MSG_TYPE_APPLY_PROHIBITION 8
598
#define MSG_TYPE_APPLY_BUILD 9
600
/* attack related messages */
601
#define MSG_TYPE_ATTACK_DID_HIT 1
602
#define MSG_TYPE_ATTACK_PET_HIT 2
603
#define MSG_TYPE_ATTACK_FUMBLE 3
604
#define MSG_TYPE_ATTACK_DID_KILL 4
605
#define MSG_TYPE_ATTACK_PET_DIED 5
606
#define MSG_TYPE_ATTACK_NOKEY 6
607
#define MSG_TYPE_ATTACK_NOATTACK 7
608
#define MSG_TYPE_ATTACK_PUSHED 8
609
#define MSG_TYPE_ATTACK_MISS 9
611
#define MSG_TYPE_COMMUNICATION_RANDOM 1
612
#define MSG_TYPE_COMMUNICATION_SAY 2
613
#define MSG_TYPE_COMMUNICATION_ME 3
614
#define MSG_TYPE_COMMUNICATION_TELL 4
615
#define MSG_TYPE_COMMUNICATION_EMOTE 5
616
#define MSG_TYPE_COMMUNICATION_PARTY 6
617
#define MSG_TYPE_COMMUNICATION_SHOUT 7
618
#define MSG_TYPE_COMMUNICATION_CHAT 8
620
#define MSG_TYPE_SPELL_HEAL 1
621
#define MSG_TYPE_SPELL_PET 2
622
#define MSG_TYPE_SPELL_FAILURE 3
623
#define MSG_TYPE_SPELL_END 4
624
#define MSG_TYPE_SPELL_SUCCESS 5
625
#define MSG_TYPE_SPELL_ERROR 6
626
#define MSG_TYPE_SPELL_PERCEIVE_SELF 7
627
#define MSG_TYPE_SPELL_TARGET 8
628
#define MSG_TYPE_SPELL_INFO 9
631
#define MSG_TYPE_ITEM_REMOVE 1
632
#define MSG_TYPE_ITEM_ADD 2
633
#define MSG_TYPE_ITEM_CHANGE 3
634
#define MSG_TYPE_ITEM_INFO 4
635
/*
636
* MSG_TYPE_MISC, by its very nature, doesn't really have subtypes. It is
637
* used for messages that really don't belong anyplace else
638
*/
639
#define MSG_TYPE_VICTIM_SWAMP 1
640
#define MSG_TYPE_VICTIM_WAS_HIT 2
641
#define MSG_TYPE_VICTIM_STEAL 3
643
#define MSG_TYPE_VICTIM_SPELL 4
645
#define MSG_TYPE_VICTIM_DIED 5
646
#define MSG_TYPE_VICTIM_WAS_PUSHED 6
649
#define MSG_TYPE_CLIENT_CONFIG 1
650
#define MSG_TYPE_CLIENT_SERVER 2
651
#define MSG_TYPE_CLIENT_COMMAND 3
652
#define MSG_TYPE_CLIENT_QUERY 4
653
#define MSG_TYPE_CLIENT_DEBUG 5
654
#define MSG_TYPE_CLIENT_NOTICE 6
655
#define MSG_TYPE_CLIENT_METASERVER 7
656
#define MSG_TYPE_CLIENT_SCRIPT 8
657
#define MSG_TYPE_CLIENT_ERROR 9
659
660
663
#define INFO_MAP_ARCH_NAME 1
664
#define INFO_MAP_NAME 2
665
#define INFO_MAP_DESCRIPTION 3
670
typedef struct SockList {
671
#ifdef CLIENT_TYPES_H
/* Used by the client */
672
int
len;
673
unsigned
char
*
buf
;
674
#else
/* Used by the server */
675
size_t
len
;
676
unsigned
char
buf
[
MAXSOCKBUF
];
/* 2(size)+65535(content)+1(ending NULL) */
677
#endif
678
}
SockList
;
679
683
typedef
struct
CS_Stats
{
684
int
ibytes
;
685
int
obytes
;
686
short
max_conn
;
687
time_t
time_start
;
//< Start time of sampling interval
688
689
// These variables partly duplicate the process_*_utime statistics in
690
// time.cpp, but are needed because we need data from the last sampling
691
// interval and not over all time.
692
unsigned
long
ticks
;
//< Number of ticks processed
693
unsigned
long
ticks_overtime
;
//< Number of ticks that were over time
694
unsigned
long
max_ticktime
;
//< Longest tick (in ms)
695
unsigned
long
total_ticktime
;
//< Total tick time (in ms)
696
}
CS_Stats
;
697
698
extern
CS_Stats
cst_tot
,
cst_lst
;
699
700
#endif
/* NEWCLIENT_H */
CS_Stats::ibytes
int ibytes
Definition:
newclient.h:684
CS_Stats::total_ticktime
unsigned long total_ticktime
Definition:
newclient.h:695
CS_Stats
struct CS_Stats CS_Stats
MAXSOCKBUF
#define MAXSOCKBUF
Definition:
newclient.h:25
CS_Stats::ticks
unsigned long ticks
Definition:
newclient.h:692
a_active
@ a_active
Definition:
newclient.h:270
buf
StringBuffer * buf
Definition:
readable.cpp:1565
CS_Stats::time_start
time_t time_start
Definition:
newclient.h:687
a_readied
@ a_readied
Definition:
newclient.h:270
a_applied
@ a_applied
Definition:
newclient.h:270
SockList
struct SockList SockList
CS_Stats::obytes
int obytes
Definition:
newclient.h:685
SockList::len
size_t len
Definition:
newclient.h:675
cst_tot
CS_Stats cst_tot
CS_Stats::max_ticktime
unsigned long max_ticktime
Definition:
newclient.h:694
a_wielded
@ a_wielded
Definition:
newclient.h:270
a_none
@ a_none
Definition:
newclient.h:270
CS_Stats::ticks_overtime
unsigned long ticks_overtime
Definition:
newclient.h:693
cst_lst
CS_Stats cst_lst
Definition:
newclient.h:698
a_worn
@ a_worn
Definition:
newclient.h:270
CS_Stats
Definition:
newclient.h:683
CS_Stats::max_conn
short max_conn
Definition:
newclient.h:686
crossfire-crossfire-server
include
shared
newclient.h
Generated by
1.8.17