|
|
发表于 2004-12-4 14:45:31
|
显示全部楼层
理论上是可以实现的,办法是启用一个场景时钟事件(线程),在调用时查询数据库,重新设置房间的容纳人数即可。% o+ M9 w+ H* z6 ]# S
因为这个时钟事件只要调用一次,所以在调用后可以将间隔时间设置为最大值。$ F5 k; _( l: o- x$ e" P
8 l0 O/ t$ J5 f$ C# b1 I& y参考资料:
4 h' j! _, x! a& E% y* q5 C. G7 x! M一、在 CMapInfo 类里有
3 r% M* I% {. h6 Q. K$ a2 H6 Q- $ {5 u- |& J, r. x9 H" E
- WORD m_nMaxUser; //最大容纳人数(管理员不限制)5 l+ w# n: \# r' U( _! S: U3 f# P
复制代码 , h4 x- ?& B% x) |7 c( C- Y% ~' @
! P. J+ M6 q: U% B2 i% v二、在供参考的《图形江湖》里的 PreTimer_SysTimer3() 函数里有修改间隔时间的例子。
& j3 s5 X- r( N0 T5 F: n
/ M! q$ u! A0 e/ I; ~" x s- pVarInfo->m_TimerParam[11].nTimeOut = (DWORD)nElapse;//pChat2.1换为如此设置了1 v2 `2 n( N9 L! U7 v2 m7 B2 o& I
复制代码 1 P' R i2 T1 t
* P: m. t6 L1 g: u; \- A0 m
三、另外在最新的《图形江湖》里还有一个管理命令,“/管理 调容量 {人数}”,也可以实现临时调整。实现办法和(一)一样。 |
|