找回密码
 注册
搜索
查看: 4594|回复: 1

Server 2.1 build 20041123 新增加功能

[复制链接]
发表于 2004-11-24 11:25:31 | 显示全部楼层 |阅读模式
功能描述6 t" \2 w$ h9 n
增加了原“因某种原因造成的卡在线上”或“只是数据库标记没有被复原”造成的不能登录的玩家也可以登录的功能。
" T$ H" C- U# R: {
# a, K: r% e% U. l该功能表现为5 i; D  j* Y$ V; N% e
若一个帐号两人使用,在第二人登录时,第一人自动失去控制权(聊天区上提示某IP使用该帐号登录)。$ E' g  C9 w% V3 }4 |& h6 I) p

* @" |: w: q! j, ^% E实现办法9 @$ }1 K; x3 R/ F
为使用该功能,必须在DLL部分的OnUserLogin() 中返回的 CUserInfo::m_bBoot 设置为 TRUE(即数据库玩家信息中的 DB_FD_TAG==CVarInfo::m_nSiteTag 时才设置该值,正常情况下不设置),当 CUserInfo::m_bBoot 为 TRUE 时,服务器会自动搜索所有场景,进行处理。
 楼主| 发表于 2004-11-24 11:36:01 | 显示全部楼层

  1. 1 j$ g, m" s4 \! L. q) O
  2. ……
    7 i; U1 l! i+ @7 {$ R7 J
  3. if(!rs.IsEOF())
    : l7 s; k$ _5 e( P
  4. {        //有数据7 h* O8 \3 R" I  h; `
  5.         rs.GetFieldValue( DB_FD_TAG, NV );        //在线标记1 T7 h' x6 {; W# F, B
  6.         if( NV.m_lVal < 1 || NV.m_lVal == pVarInfo->m_nSiteTag )& q( Y6 {. G2 B' ~/ r
  7.         {        //小于1为未登录或一些特殊处理! }1 ~0 i& b/ r/ k- c
  8.                 if( NV.m_lVal == pVarInfo->m_nSiteTag )+ p9 P% t8 J( d6 \0 f
  9.                 {        //如果数据库标记为已经登录了本服务器,则让服务器处理重复上线
    2 l' T, l# `( @3 c
  10.                         pUserInfo->m_bBoot = TRUE;
    ( Y& I, m  V* R  ~% Q& o
  11.                 }        pUserInfo->m_nTag = NV.m_lVal;
    / O: Z1 I% b  i8 T. x) R* u
  12.         rs.GetFieldValue( DB_FD_STATE, NV );        //状态7 k9 Z6 \# m- H% Z8 F& u8 e
  13.         pUserInfo->m_nState = NV.m_lVal;
    ) }/ i* y/ O1 ~. p
  14.         rs.GetFieldValue( DB_FD_NAME, strName );        //名字
    " E8 k0 T7 }9 G5 K, e
  15. ……# q7 m+ o: k# b0 `1 ?  [: p( T
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2026-6-18 12:09 , Processed in 0.018604 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表