﻿var _help={
民心上限:2,民心:2,税率:3,人口:3,人口上限:3,自由人口:3,劳动人口:3,
开工率:4,声望:5,武功:5,名声:5,眷顾值:5,爵位:7,官职:8,最大将领数:153,最大城池数:154,
内政官:9,制造官:10,研究官:11,邻长:19,里长:19,
资源生产:22,总容量:22,城外库存:22,
元宝:23,礼金:23,礼金用途:278,
外交关系:25,宣战:25,好友:25,出兵:14,
将领要求:194,在野将领:29,访贤:29,新手保护期:31,登录特技:198,将领追踪:224,洗点:225,
侦察:37,战斗指挥:15,行动顺序:277,编制军队:21,编制恢复:200,操练:21,伤兵:76,空闲士兵:21,战场距离:152,任务物品:240,事件任务:243,
连升三级:47,建筑换位:48,建筑拆除:54,
军情预警:55,保密符:155,兵种适性:57,特技:58,暴击:59,计谋:60,策反:60,缴获:290
,主将:62,副将:62,战法:63,征兵:78,募兵:78,俘虏:74
,物资交易:79
,疗伤:102,负伤:102
,死号:109,占领城池:110,剧情任务:115,个人据点:120,攻城指南:113,郡城指南:218
,休假模式:122,免战牌:122,宝物:124,拜师:125
,据点间战斗:131,联盟据点:130,盟战据点:130,联盟关系:213,特别申请:216,转盟:216,联盟最大成员数:217
,据点争夺:129,联盟捐献:128,联盟库房:128,联盟贡献度:128,联盟文斗:128,联盟科技:146
,成员名声要求:127
,野战次数限制:134,NPC战斗奖励限制:134
,委任将领:136,委任:136
,将领官职:139
,忠诚:138
,婚礼规格:140,婚姻:141,结婚:142,生宝宝:143,内助:144
,特技符:147,属性符:147,附加特技:148
,紫盒:160,小号:161,游戏规则:164,黄巾城:167,RMB玩家:172,充值任务:196
,非法信息:180,玉佩:190,郡城:181,书籍:209,藏宝图:210,名声要求:211
,耐久度:231,装备:232,最大装备数:232,装备效果:234,锻造:235,防沉迷:236,套装:238,史实装备任务:239,合成:256,强化:256
,宝箱翻番:259,强将如云:80
}

var _errorAry={
1001:"资源不够"
,1002:"建筑状态已经改变或者不存在"
,1003:"建筑已经在升级中"
,1004:"建筑类型不能改变"
,1005:"建筑级别不对"
,1006:"建造队列满"
,1007:"任务已完成或者前提条件不满足"
,1008:"无效激活码"
,1009:"该用户此类激活码已经应用过"
,1010:"交易失败"
,1011:"建筑/研究已经完成"
,1012:"唯一最高级别建筑不允许拆除"
,1013:"该类建筑只能建造一个"
,1014:"任务已经过期"
,1015:"此任务必须完成"
,1016:"今日免费更换任务次数已无"
,1018:"已经拥有该关系"
,1019:"将领拒绝学习该特技"

,1020:"问答已经回答过"
,1021:"问答已经过期"
,1022:"暂时没有其他问题了"
,1023:"休假结束后48小时内，免战结束后1小时内无法再次休假/免战"
,1024:"休假不能超过30天"
,1025:"休假/免战时不能有军团行进、战斗、驻守中，不能有将领拓建新城"
,1026:"休假/免战时无法出兵，休假时无法登录，劝降，访贤，学习，编制军队、运输等"
,1027:"对方休假/免战中，无法出兵"
,1028:"每种物品最多同时出售１００个"
,1029:"使用过健骨丸的将领无法再次显骨"


,1030:"只有分城可以放弃"
,1031:"必须放弃所有领地"
,1032:"必须没有将领"
,1033:"必须没有任何军队"
,1034:"没有使用过换骨丸"
,1035:"已经使用过透骨符"
,1036:"褒奖间隔要大于4小时"
,1037:"没有发现可召回/复活将领"
,1038:"对于联盟共享的将领必须使用念想符后才能登录"
,1039:"民心不稳城市，占领12小时后才允许放弃"

,1040:"宝物作用时间不能超过一月"
,1041:"休假时必须放弃民心不稳城市，不能有新搬迁城池"
,1042:"休假时必须释放所有俘虏"
,1043:"休假时必须放弃个人据点或申请"
,1045:"有目标本人领地的军团"
,1046:"有出征军团"
,1047:"出兵兵种不符合"

,1049:"将领数达到上限"
,1050:"只能申请一个据点"
,1051:"据点已经被占领"
,1052:"加入联盟24后才能参与捐献，据点战等"
,1053:"据点未被占领"
,1054:"已经截止"
,1055:"只能攻击一个"
,1056:"资源宝物已经满"
,1057:"名声不满足要求"
,1058:"资源或宝物不够"
,1059:"此战斗无法提前完成"
,1060:"战斗中据点无法放弃"
,1061:"据点结盟后，无法直接修改联盟关系"
,1062:"结盟后，无法进攻"
,1063:"无法结盟/解盟"
,1064:"已占领据点，禁止修改名声要求"
,1065:"资源或宝物或元宝贡献度大于0的成员才能获得联盟科技加成"
,1066:"联盟成员数满时只能使用［特别申请］申请加入联盟"

,1070:"3天内不允许降职"
,1071:"同一物品最多同时挂售100个"
,1072:"低于最低限价"
,1073:"委任将领官职低于5级"
,1074:"无法对同盟、据点结盟或夫妻宣战"
,1075:"还有12级县城未被玩家占领或有目标该地的军团"
,1076:"２４小时内只能保留/删除一次"
,1077:"已经买全8级官，请先开启新的买官列"
,1078:"官职不够，无法再买官职"

,1080:"已婚"
,1081:"已经求过婚"
,1082:"眷顾不够"
,1083:"婚礼已经结束"
,1084:"被禁言"
,1085:"完婚时双方主公将领必须空闲"
,1086:"送礼超过最大限制"
,1087:"自完婚或者上次生产后双方同时在线7天"
,1088:"名声相异无法结婚！"




,1101:"必须先在［城内］建立［茶楼］,才能招募将领！"
,1102:"金不足"
,1103:"武将不存在"
,1104:"最大武将数达到"
,1105:"校场操练士兵已经满"
,1106:"士气已经达到"
,1107:"已经在募兵中"
,1108:"操练已经结束"
,1109:"最多３个将领同时去登录同一个将领"

,1110:"将领非空闲"
,1111:"人口不足"
,1112:"粮不足"
,1113:"粮或金不足"
,1114:"已经有将领在执行该任务"
,1115:"非自己领地"
,1116:"将领没有执行该任务"
,1117:"目标非自己领地，无法派遣将领"
,1118:"已经在演习中"
,1119:"演习不存在"

,1120:"空闲士兵不足"
,1121:"物资不够或者商队不足"
,1122:"挂单不存在"
,1123:"超过时间限制"
,1124:"商队不足"
,1125:"目标没有城市"
,1126:"物资不足"
,1127:"商队不存在"
,1128:"被攻城时无法派遣将领、运输物资、发布招贤榜"
,1129:"对方无法支付元宝或礼金，交易被取消"

,1130:"兵装不够"
,1131:"已经申请过了"
,1132:"占领据点后，必须先放弃才能申请其他据点"
,1133:"已经开战"
,1134:"还未申请据点"
,1135:"军队数量或者总兵力不符合参战条件"
,1136:"有据点军队参战无法开除或退出"
,1137:"参战军队无法取消"
,1138:"非法军队"
,1139:"奖励已经领取过"
,1140:"军队非空闲"
,1141:"对方处于新手保护期，无法出兵"
,1142:"新手保护期，无法对其他玩家出兵"
,1143:"被围城中无法向外出兵"
,1144:"军队不存在"
,1145:"已经申请过演习"
,1146:"演习已经开始"
,1147:"报告不存在"
,1148:"报名已经截止"
,1149:"官职超过限制"

,1150:"目标处于战争状态或者非无主平地"
,1151:"只能召回出发120秒内的军团或者驻守在外地的"
,1152:"战斗已经结束"
,1153:"气力已满或自上次增加气力后军队没有行动过"
,1154:"最多同时追踪6人(新手保护期最多10人)，请先取消其他追踪"
,1155:"最多同时4人访贤"
,1156:"48小时内最多使用6个健骨丸"
,1157:"暂时无其他任务了"
,1158:"24小时后才能获得新任务"
,1159:"此任务无效（将领不存在或装备已被他人获得）"


,1160:"用户名不存在"
,1161:"标题不能为空"
,1162:"将领已经康复"
,1163:"必须出师后才能另立门户"
,1164:"师傅不存在或者暂停收徒"
,1165:"已经申请过了"
,1166:"官职级别+爵位级别超过3或者已经拜过师的无法拜师"
,1167:"申请不存在了"
,1168:"已经另投他人"
,1169:"官职达到县令才能出师"


,1170:"主城鸿胪寺必须达到3级才能建立联盟"
,1171:"必须先退出现有联盟才能建立新联盟"
,1172:"已经没有邀请了"
,1173:"必须先退出现有联盟才能接受邀请"
,1174:"联盟成员数到达上限"
,1175:"必须先退出现有联盟才能申请加入其他盟"
,1176:"已经申请过了"
,1177:"申请不存在了"
,1178:"已经加入其他盟了"
,1179:"没有该联盟权限"
,1180:"没有加入联盟"
,1181:"盟主必须转让后,才能退出联盟"
,1182:"联盟名已经被占用"
,1183:"主城必须建造鸿胪寺才能加入联盟"
,1184:"已经被邀请过了"
,1185:"论区ID非法"
,1186:"盟主长时间未在线才允许接管"
,1187:"将领不在或已经共享或该将领无法共享"
,1188:"联盟不存在"
,1189:"将领不在了"
,1190:"已经追踪了"

,1191:"旗号非法"
,1192:"城池名非法"
,1193:"主公名非法"
,1194:"注册ID非法"
,1195:"用户昵称非法"
,1196:"已经注册过"
,1197:"主公名已经使用"
,1198:"人已满"

,1199:"非法操作"

,1200:"口令非法"
,1201:"注册ID已经被使用"
,1202:"用户昵成已经被使用"
,1203:"本州已满"
,1204:"邮箱已经注册过！"
,1205:"邮箱非法！"

,1300:"队列已满"
,1301:"前提建筑未建"
,1302:"建筑级别不够"
,1303:"前提科技不够"
,1304:"只能同时在3个城市研究科技或制造兵装"


,1401:"道具/宝物不够"
,1402:"元宝不够"
,1403:"礼金不够"
,1404:"官府10级才能出售宝物"
,1405:"剩余点数不够"
,1406:"道具使用失败"
,1407:"每日最多招募2名史实将领"
,1408:"此特技无法猎头"
,1409:"无法精研已经拥有或者正在学习的暗金特技"

,1500:"图片只支持jpg,gif,png格式"
,1501:"图片非法"
,1502:"已经售完"
,1503:"超过今日限额，请明天来购买"
,1504:"已经下架"

,1510:"装备不存在"
,1511:"装备未鉴定"
,1512:"装备未锻造"
,1513:"装备无法锻造"
,1514:"装备已经鉴定"
,1515:"不符合装备要求"
,1516:"将领非空闲时或非城内驻守时无法更换装备"
,1517:"锻造失败"
,1518:"装备数超过上限"

,1600:"休假中或新占领城市在发布占领昭告之前，民心不稳定，无法进行劝降，建造、制造、研究、交易、调高税率等操作"
,1601:"对于非死号，占领４８小时之后，才能发布占领昭告"
,1602:"本城军队只能是守城或训练状态"
,1603:"不能有其他玩家军队驻守"
,1604:"必须放弃所有领地"
,1605:"史实城池，战乱的城池，搬迁后２４小时内的城池无法搬迁"
,1606:"此地区过于拥挤，请更换目标地"
,1607:"新搬迁城池24小时内或民心不稳城池，无法攻击其他玩家"
,1608:"新搬迁城池24小时内无法被攻击"
,1609:"对方非死号"
,1610:"目标被锁定7天内无法攻击"
,1611:"退出联盟后，7天后才能重新加入"
,1612:"将领必须在城内"
,1613:"分城税率必须在主城税率正负10之内"
,1614:"拥有节省资源特技的制造官只能被替换成更高级别特技的将领"
,1615:"拥有节省资源特技的制造官有制造任务时无法免职"
,1616:"24小时内最多收徒3人"


,1700:"重做任务时，必须有足够宝物先归还上次战斗中缴获的宝物"
,1701:"此战斗无法使用气力符"





,2000:"建筑前提不满足"
,2001:"开启条件不满足"

,8001:"该用户已经注册"
,8003:"必须解散所有军队"
,8004:"口令不对"

,9001:"非法宝箱"
,9002:"未注册用户"
,9003:"该功能暂未开放"
,9004:"NPC主公有分城时无法攻击主城"
,9005:"非法道具"
,9998:"本区暂停服务"
,9999:"系统错误,请稍候再试"
}


function _H(s,c,title){
	c=c?" "+c:""
	title=title?title:s
	return "<span class='HELP"+c+"' onclick=gohelp('"+s+"')>"+title+"</span>"
}
function gohelp(t){
	var id=_help[t]
	if (id) _viewwz(id)
		else open(_SGG.FH+"/m.aspx/ziliao.htm")
}
function _viewwz(id){
	open(_SGG.FH+"/v.aspx/"+id+".htm")
}

function _View(id){
	open(_SGG.FH+"/vv.aspx/"+id+".htm")
}

//必须完整匹配
function setHelpTitle(all,c){
	if (!all) return
	var a=ToArray(all)
	for(var i=a.length-1;i>=0;i--){
		var k=a[i].innerHTML
		if (_help[k]) a[i].innerHTML=_H(k,c)
	}
}

//在全文中寻找[]中的
function setHelpInText(all){
	setInText(all,getHelpText)
}


function setNoteInText(all){
	setInText(all,getNoteText)
}

function setInText(all,f){
	if (!all) return
	var a=ToArray(all)
	for(var i=a.length-1;i>=0;i--){
		var s=f(a[i].innerHTML)
		if(s!=a[i].innerHTML) a[i].innerHTML=s
	}
}

//[*]或者>*</td>或者【*】
function getHelpText(s,c){
	if (!s) return ""
	s=s.replace(/\[([^\]]+)\]/g,function(a,b){
			if (_help[b])	return _H(b,c)
			return a
		})
	s=s.replace(/>([^<]+)<\/td>/gi,function(a,b){
			if (_help[b])	return ">"+_H(b,c)+"</td>"
			return a
		})
	return _SGG.getTeJiText(s)
}
//全角［］
function getNoteText(s){
	if (!s) return ""
	return s.replace(/［([^<］]+)］/g,"［<span class=note>$1</span>］")
}

function ZhuGongInfoData(){
	var o=new DataBase()
	o.initData = function () {
 	
	var d=this.dialog
	var all=this.dialog.c.all


	var ca=this.oXml.selectNodes("//city/row")
	var s=""
	for (var i=0;i<ca.length;i++){
		var t=_XML2Obj(ca[i])
		s+="<tr><td>"
		var x=_ZhengQu.getCityTypeByBZHTML(t.bz)
		if (t.bz&1 || x)
			s+=GetMapLink(t.cx,t.cy,'_ZhuGongInfoAry.dialog',t.cname)+(x?" "+x:" <span class=maincity>(主城)</span>")
		else
			s+=t.cname
		s+="</td><td>"+_disRen(t.renkou)+"</td><td>"+t.chengqiangjibie
		if (x) s+=_SGG.XG+CityObj.prototype.getMaxGuanFuJiBie(t.bz)
		s+="</td><td>"+_SGG.get_minxin(t.minxin)+(t.bz&4?"<span class=bugou>民心不稳</span>":"")
			+(t.fulun?" <span class=blue>俘虏</span>"+t.fulun:"")+"</td></tr>"
	}
	
	var o=_XML2Obj(this.oXml.selectSingleNode("//zhugong"))
	
 
  s="<table class='listtab ZhuGongInfotab' width=90%><tr><td colspan=2><div id=face>"+
  	WJObj.prototype.getFaceHTML(o.wjuid,o.faceid,o.bz&1)

  + "<BR>"+(o.faceid<0?"<a href=javascript:_ZhuGongInfoAry.reloadface()>刷新头像</a>":"")+"</div>"
  +(o.bz<0?"<BR><div class=red>账户被锁定</div>":
  	(o.bz&4096?"<BR><span class=green>"+_H("新手保护期")+"</span>":"")
  		+ (o.bz & 16 ? "<BR><span class=green>" + _H("休假模式") + "</span>截止：" + _SGG.getXMLRQNoSec(o.mianzhanendrq) : "")
  		+ (o.ebz & 16 ? "<BR><span class=green>" + _H("免战牌") + "</span>截止：" + _SGG.getXMLRQNoSec(o.mianzhanendrq) : "")
       )
  	
  +"</td><td rowspan=10 valign=top><table class=listtab width=100%><tr><th>城池</th><th>人口</th><th>城墙</th><th>民心</th></tr>"
		+s+"</table><BR>查询小号："
		+_BaoWuAry.getBtn(1252)
		+_SGG.getAllText("什么是[小号]？</td></tr><TR><td class=titleTD>主公名称</td><td>")
  	+o.zname+"</td></tr><TR><td class=titleTD>性别</td><td>"
  	+(o.bz&1?"男":"女")+"</td></tr><tr><td class=titleTD>配偶</td><td>"
  	if(o.pzname)
  		s+=GetZhuGongLink({zuid:o.puid,zname:o.pzname})+" <a target=_blank href=/w/hun/hunli.aspx?zuid="+o.zuid+">婚礼</a>" 
  	else{
  		if (_ZhuGong.puid==0 && (o.bz&1)!=_ZhuGong.IsMale() && o.mingsheng*_ZhuGong.mingsheng>=0)
  			s+="<a target=_blank href=w/hun/qiuhun.aspx?tzuid="+o.zuid+">求婚</a>"
  	}
  	
  	s+="</td></tr><tr><td class=titleTD>排名</td><td>"
  	+o.paiming+"</td></tr><tr><td class=titleTD>爵位</td><td>"
  	+_JueWeiAry.getname(o.juewei)+"</td></tr><tr><td class=titleTD>官职</td><td>"
  	+_GuanZhiAry.getname(o.guanzhi)+"</td></tr><tr><td class=titleTD>名声</td><td>"
  	+o.mingsheng+"</td></tr><tr><td class=titleTD>联盟</td><td>"
  	+GetLianMengLink(o)+"</td></tr>"
  	
  	if (o.shifuid>=0){
  		s+="<tr><td class=titleTD>师门</td><td>"
	  	if (o.shifuid==0)
	  		s+=o.sname+"<input class=btn type=button value='拜师' onclick='DoDisShiFuInfo("+o.zuid+")'>"
	  	else if(o.shifuid>0)
	  		s+="<a href=# onclick='return DoDisShiFuInfo("+o.shifuid+")'>"+o.sname+"</a>"
	  	s+="</td><tr>"
  	}
  	
  	s+="<tr><td colspan=2><a href=\"javascript:SendMsg('"
  	+o.zname+"')\">写信</a> <a href=# onclick='_ZhuGongInfoAry.addgx("
  	+o.zuid+",1);return false'>加好友</a> <a href=# onclick='_ZhuGongInfoAry.addgx("+o.zuid+",2);return false'>宣战</a>"
  	
  	if ((_ZhuGong.unionqx&16)&&(_ZhuGong.unionid!=o.unionid))
  		s+=" <a href=\"javascript:YaoQingLianMeng('"+o.zname+"')\">邀请加盟</a>"
  		
  	s+="</td></tr></table>"

	d.setHTML(s)
	


	_BaoWuAry.setBtnOnclick(d.c.all,1252,function(){
			var oo=_DoXMLAct("xiaohao","&tzuid="+o.zuid+"&isyb="+event.srcElement.getAttribute("isyb"))
			if (_XMLERROR(oo)) return
			var s=oo.documentElement.getAttribute("xiaohao")
			if (s) alert("同IP段小号："+s+"\r\n查询结果同时发送了一份报告")
			else alert("没有发现同IP段账号")
		
	})
	
}		
o.reloadface=function(){
var d=this.dialog
		var i=d.c.all.face.all.tags("IMG")
		if (i.length)
			i[0].src=i[0].src+"?"+Math.random()
	}
o.addgx=function(zuid,gx){
			if (zuid==_ZhuGong.zuid){
			alert("无法和自己建立关系!")
			return
			}

			var oo=_DoXMLAct("setusrgx","&zuid="+zuid+"&gx="+gx)
			if (_XMLERROR(oo)) return
			alert("操作成功!")
	}
	
  o.getData=function(zuid){
		this.prepareData("Act.aspx?act=viewZhuGong&zuid="+zuid)
  }
	
	return o	
}


function DoDisZhuGongInfo(zuid){
	if (!self._ZhuGongInfoAry) _ZhuGongInfoAry=new ZhuGongInfoData()
	
	var d=_ZhuGongInfoAry.dialog=new Dialog(_ZhuGongInfoAry)
	d.setTitle("主公信息")
	d.Show()
	
	_ZhuGongInfoAry.getData(zuid)
	return false
}

function GetZhuGongLink(o,zuid,title){
	zuid=zuid?zuid:o.zuid
	if (zuid==0) return "土匪"
	title=title?title:(o.zname?o.zname:"")
	if (!zuid||zuid<0) return title
	
	return "<a href=# onclick='return DoDisZhuGongInfo("+zuid+")'>"+title+"</a>"
}

function GoMap(cx,cy,d){
	DoDisMap("&mapx="+cx+"&mapy="+cy,{x:cx,y:cy})
	if (d) d.Close()
}

function GetMapLink(cx,cy,dialogStr,title,noxy){
	title=title?title:""
	dialogStr=dialogStr?","+dialogStr:""
	return "<a href=javascript:GoMap("+cx+","+cy+dialogStr+")>"+title+(noxy?"":"("+cx+","+cy+")")+"</a>"
}
function GetChuBingLink(o){
	if (!o.title) o.title="出兵"
	var s=""
	if (o.gx!=null) s+=",gx:"+o.gx
	if (o.bz!=null) s+=",bz:"+o.bz
	if (o.fullname) s+=',tfullname:"'+o.fullname+'"'
	if (o.zuid!=null) s+",zuid:"+o.zuid+',zname:\\"'+o.zname+'\\"'
return "<input onclick='DoDisChuBing({dx:"+o.dx+",dy:"+o.dy+s+"})' type=button value='"+o.title+"'>"
}


function go5ilog(autogo){
	var url="http://w0.5ilog.com/cgi-bin/fromother.aspx?cid="+_GetCookie("CID")+"&uuid="+_GetCookie("uuid")
	if (autogo) url+="&autogo="+encodeURIComponent(autogo)
	open(url)
}

function goOther(d,autogo){
	var url="http://"+(d.indexOf(".")>0?d:d+".5isanguo.com")+"/from5ilog.aspx?cid="+_GetCookie("CID")+"&uuid="+_GetCookie("uuid")
	if (autogo) url+="&autogo="+encodeURIComponent(autogo)
	open(url)
}


function chongzhi(){
	open("http://www.5isanguo.com/mygame/myacount.aspx")
}

function jieshao(){
	open("http://www.5isanguo.com/mygame/jieshao.aspx")
}


function GetMapFullName(t){
	if (t.ldtype<200){
		return t.cname+" "+_YDAry.getname(t.ldtype)+t.jibie+"级"+"("+t.mapx+","+t.mapy+")"
	}
	
	var s=_ZhengQu.getCityType(t.ldtype)
	if (s)
		s=t.cname+"("+s+")"
	else
		s=t.cname+(t.ldtype==255?" 分城":" 主城")
	
	return s+t.jibie+"级城墙("+t.mapx+","+t.mapy+")"
}


function CityList(o){
	var z={cx:o.zx,cy:o.zy,ismain:true,rname:o.zcname,cname:o.zcname+"<span class=maincity>(主城)</span>"}
	z.fullname=z.cname+"("+z.cx+","+z.cy+")"
	this.cityAry=[z]
	this.cityDic={}
	this.cityDic[o.zx+","+o.zy]=z
	
	if (!o.citystr) return this
	
	var t=_GetXmlDoc()
	t.loadXML("<a>"+o.citystr+"</a>")
	
	var o=t.selectNodes("//r")
	for (var i=0;i<o.length;i++){
		var tt=_XML2Obj(o[i])
		if (tt.cx==z.cx && tt.cy==z.cy){
			z.bz=tt.bz
		}else{
			tt.fullname=tt.cname+"("+tt.cx+","+tt.cy+")"
			this.cityAry.push(tt)
			this.cityDic[tt.cx+","+tt.cy]=tt
		}
	}
}


function GXObj(oXml){
	this.oXml=oXml
}
GXObj.prototype.setoXml=function(oXml){
	this.oXml=oXml
}
GXObj.prototype.getzname=function(zuid){
	var t=this.oXml.selectSingleNode("//usrgx/row[@zuid2="+zuid+"]")
	t=t.getAttribute("zname")
	return t?t:""
}
GXObj.prototype.getuname=function(unionid){
	var t=this.oXml.selectSingleNode("//lianmenggx/row[@unionid2="+unionid+"]")
	t=t.getAttribute("uname")
	return t?t:""
}



GXObj.prototype.isDiDui=function(gx){
	gx=gx==null?this.gx:gx
	return (gx&0xAA)!=0
}
GXObj.prototype.isFriend=function(gx){
	gx=gx==null?this.gx:gx
	if (gx==256) return true
	if (gx&512) return true
	if ((gx&0x11)==0x11) return true
	if ((gx&0x44)==0x44) return true
	return false
}
GXObj.prototype.isOther=function(gx){
	if (this.isDiDui(gx) ||this.isFriend()) return false
	return true
}

GXObj.prototype.checkGx=function(zuid,unionid){
	this.gx=this.getGx(zuid,unionid)
	return this.gx
}
GXObj.prototype.getgxClass=function(gx){
	gx=gx==null?this.gx:gx
	if (GXObj.prototype.isFriend(gx)) return " class=green"
	if (GXObj.prototype.isDiDui(gx)) return " class=red"
	return ""
}

GXObj.prototype.getShuangXiangGx=function(gx){
	gx=gx==null?this.gx:gx
	switch(gx){
		case 0:
		case 256:
		case 512:
		case 1024:
		case 0x11:
			return gx
		default:
			if (gx&0x22) return 0x2 //一方敌对
			if (gx&0x88) return 0x8 //一方敌盟
			if ((gx&0x44)==0x44) return 0x44
			if (gx&256) return 256
			
		
			return 0
	}
}

GXObj.prototype.getgxname=function(gx){
	gx=gx==null?this.gx:gx
	switch(gx){
		case 512:return "本人"
		case 0x11:return "好友"
		case 256:return "同盟"
		case 1024:return "NPC"
		case 0:return "中立"
		default:
			if (gx&0x22) return "敌对"
			if (gx&0x88) return "敌盟"
			var s=""
			if (gx&1) s="我加对方好友"
			else if (gx&0x10) s="对方加我好友"
			
			if ((gx&0x44)==0x44) return "友盟"+(s?"(且"+s+")":"")

			if (gx&0x4) s+=" 我盟加对方友盟"
			else if (gx&0x40) s+=" 对方加我盟友盟"
			
		
			return "中立"+(s?"(但"+s+")":"")
	}
}

/*0-3	个人双向关系4位
1	个人友好
2 个人敌对
4	联盟友好
8 联盟敌对

10 对方给我的
20
40
80

256	是否同一个盟1位
512	是否同一个人1位
1024	对方，是否NPC？
*/



GXObj.prototype.getGx=function(zuid,unionid){
			if (zuid==_ZhuGong.zuid) return 512
			if (zuid<=0) return 1024

			var t=this.oXml.selectSingleNode("//usrgx/row[@zuid2="+zuid+"]")
			var gx=0
			if (t){
				gx=parseInt(t.getAttribute("gx"))
				//一方敌对，就敌对
				if (gx&0x22) return gx
				//双向友好关系直接返回
				if ((gx&0x11)==0x11) return gx
			}

			if (unionid==0 || _ZhuGong.unionid==0) return gx
			if (unionid==_ZhuGong.unionid) return 256|gx
			
			var t=this.oXml.selectSingleNode("//lianmenggx/row[@unionid2="+unionid+"]")
			if (t){
				var ugx=parseInt(t.getAttribute("gx"))<<2
				//if (gx&68) return gx|ugx
				//if ((gx&136)==136) return gx|ugx
				return gx|ugx
			}
			return gx
}

/*GXObj.prototype.getGx=function(zuid,unionid){
			if (zuid==_ZhuGong.zuid) return 1
			if (zuid<=0) return 18

			var t=this.oXml.selectSingleNode("//usrgx/row[@zuid2="+zuid+"]")
			var gx
			if (t){
				gx=parseInt(t.getAttribute("gx"))
				if (gx&34) return 2
				if ((gx&1)==0) return 0
			}

			if (unionid==0 || _ZhuGong.unionid==0) return 128
			if (unionid==_ZhuGong.unionid) return 4
			
			var t=this.oXml.selectSingleNode("//lianmenggx/row[@unionid2="+unionid+"]")
			if (t){
				gx=parseInt(t.getAttribute("gx"))
				if (gx&34) return 10
				if (gx&1) return 8
			}
			return 128
}*/

function DataBase(){
	this._oXml=_GetXmlDoc()
}

DataBase.prototype.setRefresh=function(ms){
  	this._handle=setTimeout(this.refreshFuncName,ms)
}
  
DataBase.prototype.prepareData=function(xmlurl){
		this.close()
		_SetXMLObjFunc(this._oXml,this,"initData0","/cgi-bin/class/SanGuo/"+xmlurl)//+"&"+Math.random())
}

DataBase.prototype.CallBack=function(func,xmlurl){
	_XMLObjFuncCallBack(this,func,"/cgi-bin/class/SanGuo/"+xmlurl)//+"&"+Math.random())
}
  
DataBase.prototype.initData0=function(oXml){
		this.oXml=_SGG.isIE?this._oXml.cloneNode(true):oXml
		var r=this.oXml.documentElement
		if (!r || r.nodeName!="root"){
			_XMLERROR(this.oXml,null,"base")
			return
		}
		_SGG.networkerror=0
		var c=_XML2Obj(r)
		
		if (c.rq)	_SGG.setSRQ(c.rq)
		
		this.root=c

		this.initData()
}
DataBase.prototype.GetServerRQ=function(){return _SGG.SRQ()}

DataBase.prototype.resetXML=function(oXml){
	if (oXml!=this._oXml) this.close()
	this._oXml=oXml
	this.initData0(oXml)
}


DataBase.prototype.close=function(){
		var r=this._handle
		if (r) clearTimeout(r)
		//if (this._oXml)	this._oXml.abort()
}

DataBase.prototype.getEndRQ=function(ms){
		if (ms<0) ms=5000
		else if (ms<1000) ms=1000
		var t=_SGG.SRQ()
		t.setMilliseconds(ms)
		return _disRQ(t)
}

DataBase.prototype.getSYTimeStr=function(endrq,addsecond){
		var ms=GetRQ(endrq).getTime()-_SGG.SRQ().getTime()
		addsecond=addsecond?addsecond:60
		return this.getSYTimeStrByMS(ms+addsecond*1000)
}

DataBase.prototype.getSYTimeStrByMS=function(s){
	s=Math.floor(s/1000)
	if (s<=0) s=10
	return GetTimeStr(s)
}


DataBase.prototype.getSYSecond=function(endrq)		{
		var t=GetRQ(endrq).getTime()-_SGG.SRQ().getTime()
		return Math.floor(t/1000)
}




//分页对象
function PageDataBase(){
	var o=new DataBase()
	
	o.pageAry=new Array("")
	o.curpage=0
	
	o.geturl=function(){return ""}

	o.chaxun=function(){
		this.pageAry=new Array(this.geturl())
		this.gopage(0)
	}

	o.gopage=function(i){
		this.curpage=i
		this.getData(this.pageAry[i])
	}
	
	o.setpage=function(url){
		 this.pageAry.push(this.pageAry[0]+url)
	}
	
	o.getpagelist=function(objname,a,count,idname,head){
		var s=""
		for(var i=1;i<this.pageAry.length;i++){
			if (i==this.curpage) s+="　"+(i+1)
				else s+="　<a href=javascript:"+objname+".gopage("+i+")>"+(i+1)+"</a>"
		}
		
		if (this.curpage+1==this.pageAry.length && a.length>=count){
			this.setpage("&next="+a[a.length-1].getAttribute(idname))
			s+="　<a href=javascript:"+objname+".gopage("+(this.curpage+1)+")>下一页</a>"
		}

		return "<table width=100%><tr><td>"+(head?head:"")+"<a href=javascript:"+objname+".gopage(0)>首页</a></td><td align=right>"
		+s+"</td></tr></table>"
	}


	return o
}


/******pub func**************/

function FindTag(o,tagName){
	while (o.tagName!=tagName) {
			o=o.parentElement
			if (!o) return null
	}
	return o
}

function _SetXMLFunc(xmlDoc,func,xmlurl){
	_SetXMLObjFunc(xmlDoc,self,func,xmlurl)
	return 
	/*if(_SGG.isIE){
	xmlDoc.abort()
	_SetXMLOnload(xmlDoc,function(){
		if (xmlDoc.readyState!=4) return;
		func(xmlDoc)
	})
	xmlDoc.load(xmlurl)
	return
	}

        var h = new XMLHttpRequest()
        h.onreadystatechange = function () {
            if (h.readyState != 4) return
            func(h.responseXML)
        }
        h.open('GET', xmlurl)
        h.send()
        return 	*/
}
function _SendHTTP(url){
if (_SGG.isIE){
	var xmlDoc=_GetXmlDoc()
	xmlDoc.load(url)
	return
}
        var h = new XMLHttpRequest()
        h.open('GET',url)
        h.send()
}


function _XMLObjFuncCallBack(o,funcname,xmlurl){
	var xmlDoc=_GetXmlDoc()
	_SetXMLObjFunc(xmlDoc,o,funcname,xmlurl)
}
function _SetXMLObjFunc(xmlDoc,o,funcname,xmlurl){
	if (_SGG.isIE){
	xmlDoc.abort()
	_SetXMLOnload(xmlDoc,function(){
		if (xmlDoc.readyState!=4) return;
			o[funcname](xmlDoc)
	})
	xmlDoc.load(xmlurl)
	return
}
        var h = new XMLHttpRequest()
        
        h.onreadystatechange = function () {
            if (h.readyState != 4) return
            o[funcname](h.responseXML)
        }
        var a=xmlurl.split("?")
        h.open("POST", a[0],true); 
      	h.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
        h.send(a.length>1?a[1]:"");
        //h.open('GET', xmlurl)
        //h.send()
}



function _XML2Obj(oXmlNode){
	var o={}
	var a=oXmlNode.attributes
	if (!a) return o
	for (var i=a.length-1;i>=0;i--){
		var n=a[i].nodeName
		var s=oXmlNode.getAttribute(n)
		if (s){
			if (s.indexOf(".")<0 && !isNaN(s)) s=parseInt(s)
		}
		o[n.toLowerCase()]=s
	}
	return o
}

function _XMLSetObj(oXmlNode,o){
	var a=oXmlNode.attributes
	if (!a) return o
	for (var i=a.length-1;i>=0;i--){
		var n=a[i].nodeName
		var s=oXmlNode.getAttribute(n)
		if (s){
			if (!isNaN(s)) s=parseInt(s)
		}
		o[n.toLowerCase()]=s
	}
	return o
}



function _DoXMLAct(act,otherCanShu,n){
	var url="/cgi-bin/class/SanGuo/Act"+(n?n:"")+".aspx?act="+act
	if (otherCanShu) url+=otherCanShu
	return _GetXMLDataSync(url)//+"&"+Math.random())
}

function _XMLERROR(oXml,notdiserror,src){
	if (oXml.childNodes.length==0){
		if (src=="base"){
			if (++_SGG.networkerror<3) return true
		} 
			alert("网络错误,请稍候再试!")
			_SGG.networkerror=0
		
		return true
	}
	_SGG.networkerror=0
	
	var o=oXml.selectSingleNode("//error")
	if (!o) return false
		if (o.text=="-9002"){
			location="/reg.aspx"
			return true
		}

	if (o.getAttribute("errcode")=="1"){
		//口令不对
		alert("未登录或者口令不对！")
		location="http://www.5isanguo.com/"
		return true
	}


	if (!notdiserror){
		var s=o.text?_errorAry[o.text.substr(1)]:""
		alert(s?s:o.text)
	}
	return true
}
function _DisError(r){
	if (r>=0) return false
	r=-r
	
	var s=_errorAry[r]
	if (s) alert(s)
		else alert("未知错误! ="+r)

	return true
}



function _GetXMLFunc(xmlurl,func){
var xmlDoc=_GetXmlDoc()

xmlDoc.load(xmlurl);
_SetXMLOnload(xmlDoc,function(){
	if (xmlDoc.readyState!=4) return;
	func(xmlDoc)
})
}


function GetInt(o,name){
	var i=o.getAttribute(name)
	if (i) return parseInt(i)
	return 0
}




var Form={name:"",
	init:function(data,html){
		//显示新窗口
		if (this.data!=data){
			this.FormClose()
			this.data=data
			_SGG.setA()
		}
		Form.c=mainWin
		mainWin.innerHTML=html

	},

	refresh:function(){
		if (!this.data) return
		if (!this.data.refresh) return
		this.data.refresh()
	},


	FormClose:function(){
		//关闭
		this.name=""
		if (this.data){
			if (this.data.close) {
				this.data.close()
			}
		}
		this.data=null
		_SGG.CloseDialog()
	},
	
	setTitle:function(s){
		//FormTitle.innerText=s
	}
	
}

function Dialog(data,hiddenCloseBtn){
	_SGG.setA()
	
	this.data=data
	
	var d=document.createElement("DIV")
	this.d=d
	this.style=d.style

	d.className="DialogDIV"
	d.innerHTML="<div id=dclose title='关闭'>X</div><div class=a>"
		+"<div class=title id=t></div><div id=c>数据读取中...</div><div class=btnclosediv><input id=btnclose type=button value='关闭' class='btn DialogCloseBtn'></div></div>"
	

	document.body.insertAdjacentElement("beforeEnd",d)
	
	var This=this
	_GetAllInDiv(d,"dclose").onclick=_GetAllInDiv(d,"btnclose").onclick	=function(){This.Close()}	
	
	this.c=_GetAllInDiv(d,"c")
	if (hiddenCloseBtn) _GetAllInDiv(d,"btnclose").style.display="none"
	
	var h=this.h=document.createElement("DIV")
	h.style.zIndex=_SGG.incZindex()
	h.className="DialoghiddenallDIV"

	if (!_SGG.IE7)
		h.innerHTML="<iframe id=dialogiframe style='display:block' class=DialoghiddenallDIV scrolling=no frameborder=0></iframe>"
	document.body.insertAdjacentElement("beforeEnd",h)

	d.style.zIndex=_SGG.incZindex()
	d.style.top=((_SGG.IE7?document.documentElement:document.body).scrollTop+50)+"px"
	
	this.ishidden=true
	this.closed=false
	d=h=null
	//this.bigString=new Array(1000).join(new Array(2000).join("XXXXX")); 
}

Dialog.prototype.ShowCloseBtn=function(r){_GetAllInDiv(this.d,"btnclose").style.display=r?"":"none"}

Dialog.prototype.setHTML=function(html){this.c.innerHTML=html}

Dialog.prototype.Show=function(isrefresh){
		this.ishidden=false
		this.d.style.display="block"

if (!_SGG.IE7){
		var s=_GetAllInDiv(this.h,"dialogiframe").style
		s.width = this.d.offsetWidth 
		s.height = this.d.offsetHeight
		s.top = this.d.offsetTop+"px"
		s.left = this.d.offsetLeft+"px"
		s.zIndex = this.h.style.zIndex
		s=null
}
		this.h.style.display="block"
		/*if (!isrefresh){
			if (document.documentElement.scrollTop>this.d.offsetTop){
				this.d.scrollIntoView()
			}
		}*/
		this.h.style.height=document.body.scrollHeight+"px"
		
}
	
Dialog.prototype.Close=function(){
		if (this.data){
				if (this.data.close) {
					this.data.close()
				}
				//if (this.data.dialog==this)this.data.dialog=null
				this.data=null
		}
		if (this.close){
			this.close()
		}
		this.closed=true
		this.c=this.style=null
		
		this.d.outerHTML=""
		this.h.outerHTML=""
		this.d=this.h=null
		_SGG.decZindex(2)
}
	
Dialog.prototype.setTitle=function(s){
		var t=_GetAllInDiv(this.d,"t")
		t.innerHTML=s
		t.style.display=s?"":"none"
}

Dialog.prototype.setfullscreen=function(){
		this.d.style.width="980px"
		this.d.style.left="20px"
}




function OnlyOneDialog(){
	_SGG.setA()
			var d=document.createElement("DIV")
			this.d=d
			var s=this.style=d.style
				s.position="absolute"
				s.width="600px",s.height="500px"
				s.left="0px",s.top="250px"

			d.className="DialogDIV"
			d.innerHTML="<div id=dclose title='关闭'>X</div><div class=a>"
				+"<div class=title id=t></div><div id=c></div><div class=btnclosediv><input id=btnclose type=button value='关闭' class='btn DialogCloseBtn'></div></div>"
			
			var This=this
			_GetAllInDiv(d,"dclose").onclick=_GetAllInDiv(d,"btnclose").onclick=function(){This.Close()}
			
			document.body.insertAdjacentElement("beforeEnd",d)
			
			this.c=_GetAllInDiv(d,"c")
			this.ishidden=true
}
	
OnlyOneDialog.prototype.setHTML=function(html){
		this.c.innerHTML=html
}

OnlyOneDialog.prototype.Show=function(){
		this.style.zIndex=_SGG.incZindex()
		this.style.display="block"
		this.addz=true
}
	
OnlyOneDialog.prototype.Close=function(){
		if (this.close) {
				this.close()
				this.close=null
		}
		this.style.display="none"
		this.setTitle("")
		this.setHTML("")
		if (this.addz){
			_SGG.decZindex(1)
			this.addz=false
		}
}
	
OnlyOneDialog.prototype.setTitle=function(s){
		_GetAllInDiv(this.d,"t").innerHTML=s
}





function GetSec(s){
	var a=s.split(":")
	var n=0
	for(var i=0;i<a.length;i++)
		n=n*60+parseInt(a[i],10)
		
  return n		
}

function GetTimeStr(n){
	var s
	if (n<3600) return Math.floor(n/60)+":"+_timestr(n%60)
	
	var s=Math.floor(n/3600)+":"
	n%=3600
  return s+_timestr(n/60)+":"+_timestr(n%60)
}

function GetCNTimeStr(n){
	var s=""
	var d=Math.floor(n/3600/24)
	if (d>0){
		s=d+"天"
		n%=3600*24
	}
	d=Math.floor(n/3600)
	if (d>0){
		s+=d+"小时"
		n%=3600
	}
	d=Math.floor(n/60)
	if (d>0){
		s+=d+"分钟"
		n%=60
	}
	//if (n>0) s+=Math.floor(n)+"秒"
	return s
}




function _timestr(n){
	var s=Math.floor(n).toString()
	if (s.length==1) return "0"+s
	return s
}


function DecTime(s,i){
	if(!i) i=1
	var t=GetSec(s)-i
	if (t<0) t=0
	return GetTimeStr(t)
}


function _debug(s){
	if (!self.debug) return
	if (debug.value.length>5000) debug.value=s
	else debug.value+=s+"\r\n"
}

function _disZY(n){
	return _disN(_ZY(n))
}


function _RZY(n){
	return n*1000
}

function _RRen(n){
	return n*10
}

function _RMinXin(n){
	return n*1000000
}

function _MinXin(n){
	return Math.floor(n/1000000)
}


function _ZY(n){
	return Math.floor(n/1000)
}

function _ZYK(n){
	return Math.floor(n/100000)/10+"<span class=kdanwei>K</span>"
}


function _Ren(n){
	return Math.ceil(n/10)
}


function _disRen(n){
	return _disN(_Ren(n))
}


function _disN(n){
	n=Math.floor(n)
	var s=""
	for (;n>=1000;){
		var t=(n%1000).toString()
		while(t.length<3) t="0"+t
		s=","+t+s
		n=Math.floor(n/1000)
	}
	return n+s
}
function _bugou(n){
	if (n<=0) return "<span class=bugou>"+n+"</span>"
	return n
}

function GetRQ(s){
	if (!s) return null
	var a=s.replace("T"," ").split(" ")
	
	var d=a[0].split("-")
	d[1]-=1
	if (!a[1]) return new Date(d[0],d[1],d[2])
	
	var t=a[1].split(":")
	for(var i=t.length;i<3;i++) t[i]=0
	return new Date(d[0],d[1],d[2],t[0],t[1],t[2])
}

function SubRQSec(r1,r2){
	if (!r2) r2=new Date()
	return Math.floor((r2.getTime()-r1.getTime())/1000)
}


function GetRadioCheckBoxValue(f){
	var ids=ToArray(f)
	var s=""
	for (var i=0,l=ids.length;i<l;i++)
        if (ids[i].checked) s+=","+ids[i].value;

 if (s)return s.substr(1)
 return s
}

function SetRadioCheckBoxValue(f,v){
	var ids=ToArray(f)
	for (var i=0,l=ids.length;i<l;i++)
   if (ids[i].value==v) {
      ids[i].checked=true
      return
   }
}

function _disRQ(rq){
	var s=rq.getFullYear()+"-"+(rq.getMonth()+1)+"-"+rq.getDate()
		+" "+rq.getHours()+":"
	var n=rq.getMinutes()
	s+=n>9?n:"0"+n
	n=rq.getSeconds()
	s+=":"
	s+=n>9?n:"0"+n
	return s
}
function _disDate(rq){
	var s=rq.getFullYear()+"-"
	var m=rq.getMonth()+1
	s+=m>9?m:("0"+m)
	s+="-"
	m=rq.getDate()
	s+=m>9?m:("0"+m)
	return s
}


function _disWJP(o){
	return "<td>"+WJObj.prototype.disp(o.wuli0,o.wuli)
		+"</td><td>"+WJObj.prototype.disp(o.tongshuai0,o.tongshuai)
		+"</td><td>"+WJObj.prototype.disp(o.zhili0,o.zhili)
		+"</td><td>"+WJObj.prototype.disp(o.zhengzhi0,o.zhengzhi)
		+"</td><td>"+WJObj.prototype.disp(o.meili0,o.meili)+"</td>"
}

function _disWJBS(o){
	var s=""
	for(var i=0;i<5;i++)
		s+="<td>"+_BingZhuangAry.getbsNamebyn((o.bs>>(i*3)))+"</td>"
	return s
}





function _getZYListHTML(o,c){
c=c?c:1
var html=""
if (o.ls) html+=" 粮："+_disZY(o.ls*c)
if (o.mu) html+=" 木："+_disZY(o.mu*c)
if (o.shi) html+=" 砖："+_disZY(o.shi*c)
if (o.tie) html+=" 铁："+_disZY(o.tie*c)
if (o.jin) html+=" 金："+_disZY(o.jin*c)
return html
}

function _getZYListNoJinHTML(o){
var html=""
if (o.ls) html+=" 粮："+_disZY(o.ls)
if (o.mu) html+=" 木："+_disZY(o.mu)
if (o.shi) html+=" 砖："+_disZY(o.shi)
if (o.tie) html+=" 铁："+_disZY(o.tie)
return html
}

function _RedColor(yaoqiun,n){
	return _SetColor("bugou",yaoqiun,n)
}

function _SetColor(c,yaoqiun,n){
	if (n>=yaoqiun) return n
	return "<span class="+c+">"+n+"</span>"
}


function _disWJPHead(){
	return "<th sortname=wuli>武力</th><th sortname=tongshuai>统率</th><th sortname=zhili>智力</th><th sortname=zhengzhi>政治</th><th sortname=meili>魅力</th>"
}
function _disWJBSHead(){
	return "<th sortname=bs0>枪</th><th sortname=bs1>戟</th><th sortname=bs2>弓</th><th sortname=bs3>骑</th><th sortname=bs4>械</th>"
}


var _SGG={VER:"2.37",jianzhuDelay:60,kejiDelay:60,zhizaoDelay:60,networkerror:0
	,zhandou:"zhandou.html?VER="+(window._SGVER?_SGVER.zhandou:"")
	,zhandouSL:"sl.html?VER="+(window._SGVER?_SGVER.zhandou:"")
	,zindex:11000,XG:"<span class=xiegang>/</span>"
	,_srq:new Date()
	,isIE:_getiever()
	,getXMLP:function(oXml,n){
		var root=oXml.documentElement
		return root?root.getAttribute(n):null
},

isSL:function(version){
    if (version == undefined)
        version = null;
        
    var isVersionSupported = false;
    var container = null;

    try
    {
        var control = null;
        var tryNS = false;

        if (window.ActiveXObject)
        {
            try
            {
                control = new ActiveXObject('AgControl.AgControl');
                if (version === null)
                {
                    isVersionSupported = true;
                }
                else if (control.IsVersionSupported(version))
                {
                    isVersionSupported = true;
                }
                control = null;
            }
            catch (e)
            {
                tryNS = true;
            }
        }
        else
        {
            tryNS = true;
        }
        if (tryNS)
        {
            var plugin = navigator.plugins["Silverlight Plug-In"];
            if (plugin)
            {
                if (version === null)
                {
                    isVersionSupported = true;
                }
                else
                {
                    var actualVer = plugin.description;
                    if (actualVer === "1.0.30226.2")
                        actualVer = "2.0.30226.2";
                    var actualVerArray = actualVer.split(".");
                    while (actualVerArray.length > 3)
                    {
                        actualVerArray.pop();
                    }
                    while (actualVerArray.length < 4)
                    {
                        actualVerArray.push(0);
                    }
                    var reqVerArray = version.split(".");
                    while (reqVerArray.length > 4)
                    {
                        reqVerArray.pop();
                    }

                    var requiredVersionPart;
                    var actualVersionPart;
                    var index = 0;


                    do
                    {
                        requiredVersionPart = parseInt(reqVerArray[index]);
                        actualVersionPart = parseInt(actualVerArray[index]);
                        index++;
                    }
                    while (index < reqVerArray.length && requiredVersionPart === actualVersionPart);

                    if (requiredVersionPart <= actualVersionPart && !isNaN(requiredVersionPart))
                    {
                        isVersionSupported = true;
                    }
                }
            }
        }
    }
    catch (e)
    {
        isVersionSupported = false;
    }
    
    return isVersionSupported;
},

getXMLRQStr:function(rq){
	if (!rq)return ""
	var s=rq.replace("T"," ")
	var i=s.indexOf(".")
	if (i>=0)	return s.substr(0,i)
	return s
},
getXMLRQNoSec:function(rq){
	var s=this.getXMLRQStr(rq)
    if (s.length>16) return s.substring(0,16)
	return s
}
	, getXMLShortRQ: function (rq) {
	    return this.getXMLRQStr(rq).substr(5, 11)
	}
	, getXMLRQ: function (rq) {
	    return this.getXMLRQStr(rq).substr(5, 5)
	}
	, getXMLDate: function (rq) {
	    return this.getXMLRQStr(rq).substr(0, 10)
	}
,getZhanChangBtn:function(x,y,title){
	if(!title)title="指挥"
	return "<input type=button onclick='_SGG.newin(\""+_SGG.zhandou+"\",\"&mapx="
		+x+"&mapy="+y+"\")' value='"+title+"'>"
	 +"<input type=button onclick='_SGG.newin(\""+_SGG.zhandouSL+"\",\"&mapx="
		+x+"&mapy="+y+"\")' value='银光版"+title+"'>"
}

,mancang:function(n,r){
		var s="<span"
		if (n>=r) s+=" class=mancang"
		else if (n>=r*0.9) s+=" class=mancang1"
		if (r>_RZY(1000000)) return s+=" title='"+_disZY(n)+"'>"+_ZY(n/10000)+"<span class=kdanwei>万</span></span>"
			+_SGG.XG+"<span class=rongliang title='"+_disZY(r)+"'>"+_ZY(r/10000)+"<span class=kdanwei>万</span></span>"

		return s+=">"+_disZY(n)+"</span>"+_SGG.XG+"<span class=rongliang>"+_disZY(r)+"</span>"
		
	}
	,sendZhanBao:function(id){
		var oo=_DoXMLAct("zhanbaoshow",_Chat.geturl()+"&id="+id,2)
		if (_XMLERROR(oo)) return
		_ZhuGong.resetXML(oo)
		alert("发送成功！")
	}
	,sendZB:function(id){
		var oo=_DoXMLAct("zbshow",_Chat.geturl()+"&id="+id,2)
		if (_XMLERROR(oo)) return
		_ZhuGong.resetXML(oo)
		alert("发送成功！")
	}
	
	,delHTML:function(s){
		return s.replace(/<\/?[a-zA-Z][^>]*>/g,"")
	}
	,spanC:function(s,c){return "<span class="+c+">"+s+"</span>"}
	,spanS:function(s,c){return "<span style='"+c+"'>"+s+"</span>"}

	,setSRQ:function(rq){
		if (rq) this._srq=GetRQ(rq)
	}
	,_dayAry:["今","昨","前","大前"]
	,getdayHTML:function(rq){
		var d=Math.floor(this.datediff('day',rq))
		if (d>=0 && d<=3) return "<span class=day"+d+">"+this._dayAry[d]+"天</span>"
		return ""
	}
	,datediff:function(part,rq){
		var n=(this.SRQ().getTime()-rq.getTime())/1000
		switch(part){
			case "minute":return n/60
			case "hour":return n/3600
			case "day":return n/3600/24
		}
		return n
	}
	,addsec:function(){ 
		var rq=this._srq
		rq.setMilliseconds(1000);
		
		var s=rq.getHours()+":"
		var n=rq.getMinutes()
		s+=n>9?n:"0"+n
		n=rq.getSeconds()
		s+=":"
		s+=n>9?n:"0"+n
		return s
	}
	,BaiFen:function(n1,n2){
	 if (n2==0) return "-"
		return (Math.round(n1*1000/n2)/10)+"%"
	}
	,startWith:function(s1,s2){
		if (!s1 || !s2) return false
		return s1.substr(0,s2.length)==s2
	}
	,swap:function(o1,o2,p){
		var t=o1[p]
		o1[p]=o2[p]
		o2[p]=t
	}
	,IN:function(v){
		for (var i=1;i<arguments.length;i++){
			var a=arguments[i]
			if (a.length) for(var j in a){
				if (v==a[j])return true
			}
			else if (v==a) return true
		}
		return false
	}
	
	,getTeJiText:function(s){
		if (!s) return ""
		return s.replace(/【([^】]+)】/g,function(a,b){
			return _SGG.TeJi(b)
		})
	}
	,getBaoWuText:function(s){
		return s.replace(/\$BAOWU([^$]+)\$/g,function(a,b){
			return _BaoWuAry.getlistHTML(b)
		})
	}
	,getAllText:function(s){
		return getHelpText(getNoteText(s),"green")
	}


	,SRQ:function(){return new Date(this._srq)}
	
	,incZindex:function(){
		return ++this.zindex
	}
	
	,disWJPList:function(o){
	return "武"+WJObj.prototype.disp(o.wuli0,o.wuli)
		+"，统"+WJObj.prototype.disp(o.tongshuai0,o.tongshuai)
		+"，智"+WJObj.prototype.disp(o.zhili0,o.zhili)
		+"，政"+WJObj.prototype.disp(o.zhengzhi0,o.zhengzhi)
		+"，魅"+WJObj.prototype.disp(o.meili0,o.meili)
}
	
	,WJPShortHead:"<th sortname=wuli>武</th><th sortname=tongshuai>统</th><th sortname=zhili>智</th><th sortname=zhengzhi>政</td><th sortname=meili>魅</th>"
	,getList:function(str,fenge){
    if (!str) return ""
    if (!fenge) fenge="，"

    var s=""
    var b=str.split(",")
    for(var i=0;i<b.length;i++){
    	var t=b[i]
    	if (!t) continue
   		var a=t.split("=")
    	if (a.length!=2) continue
    	if (_StartWith(a[0],"w")){
    		var bname=_BaoWuAry.getname(a[0].substr(1))
    		if (bname) s+=fenge+bname+a[1]
    		continue
    	}
			switch(a[0]){
        case "ls":s+=fenge+"粮"+a[1];break
    		case "mu":s+=fenge+"木"+a[1];break
    		case "shi":s+=fenge+"砖"+a[1];break
    		case "tie":s+=fenge+"铁"+a[1];break
    		case "jin":s+=fenge+"金"+a[1];break
    		case "minxin":
    			if (_StartWith(a[1],"-"))
    				s+=fenge+"民心"+a[1]
    			else
						s+=fenge+"民心上升"+a[1]
			}
			
		}
		return s?s.substr(fenge.length):""
		
	}
	
	
	,disJiaSu:function(o,func,t,sytime){
		var d=new Dialog()
		
		var s=getNoteText("<div class=text>可以使用宝物［加速符］加速，也可以直接使用［元宝］或者［礼金］加速。")
			+_H("礼金","note","什么是元宝/礼金？")+"<BR>同时使用多个，效果累加。<BR><BR>"+_SGG.getChongZhiHTML()
			+"</div><BR><BR>"
		if (sytime)
			s+="<div class=text>剩余时间：<span id=TIME class=note>"+sytime+"</span></div>"
			
		s+="<table class=listtab><tr><th>宝物名称</td><th>说明</td><th>当前拥有</td><th>使用数量</th></tr>"
		for (var i=301;i<=304;i++){
			var w=_BaoWuAry.getobj(i)
			var n=_ZhuGong.getBaoWu(i)
			s+="<tr><td class=titleTD>"+w.name+"</td><td>"+w.fuzhu+"</td><td>"
				+n+"</td><td><input style='width:50px' class=input value=1 id=n"+i+"></td><td>"+_BaoWuAry.getBtn(i)+"</td></tr>"
		}
		d.setTitle("加速")
		d.setHTML(s+"</table>")
		
		var a=d.c.all
		var f=function(){
			var e=event.srcElement
			var w=e.id.substr(3)
			o[func](t,w,e.getAttribute("isyb"),_GetAllByID(a,"n"+w).value)
			d.Close()
		}
		for (var i=301;i<=304;i++){
			_BaoWuAry.setBtnOnclick(a,i,f)
		}
		d.Show()
	}

	,tejicomp:function(s){
		if (!s) return "9"
		var i
		if (/(\d)$/g.test(s)){
			i=RegExp.$1
			s=s.substr(0,s.length-1)
		}else{
			i=0
		}
		return i+s
	}
	,TeJi:function(s,dec){
	var t=this.gettejiobj(s)
	if (!t) return ""
	if (dec) t.jibie+=dec
	if (t.jibie>3) return ""
	return "<span onclick='_SGG.goteji()' class=teji"+t.jibie+">"+t.name+"</span>"
}
,disteji:function(s){
		if (!s) return ""
		var a=s.split(",")
		s=""
		for (var t in a){
			s+=","+_SGG.TeJi(a[t])
		}
		return s.substr(1)
}
,gettejiobj:function(s){
	if (!s) return null
	var i
	if (/(\d)$/g.test(s)){
		i=parseInt(RegExp.$1)
		s=s.substr(0,s.length-1)
	}else{
		i=0
	}
	return {name:s,jibie:i}
}

,goteji:function(){
	open(this.FH+"/v.aspx/58.htm#"+event.srcElement.innerText)
}

	,_aStartTime:new Date(),_aLastTime:new Date()
	,setA:function(){
		var d=new Date()
		if (!this.IsA()){
			this._aLastTime=this._aStartTime=d
			setTimeout("_ZhuGong.getData()",3000)
		}else
			this._aLastTime=d
	}
	//是否活跃
	,IsA:function(){
		return (this.getLastAM()<2)
	}
	,getLastAM:function(){
		return ((new Date()).getTime()-this._aLastTime.getTime())/60000
	}

	//活跃分钟数
	,getAM:function(){
		if (this.IsA()) return ((new Date()).getTime()-this._aStartTime.getTime())/60000
		return 0
	}
	
	,IE7:(/MSIE [789]/.test(window.navigator.userAgent))

	,getWJAry:function(nodes){
		var a=[]
		for(var i=0;i<nodes.length;i++)
			a.push(new WJObj(nodes[i]))
		return a
	}

	,decZindex:function(i){
		this.zindex-=(i?i:1)
	}

	
	,isToday:function(rq){
		return _disDate(GetRQ(rq))==_disDate(this.SRQ())
	}
	

	,getbbslink:function(id,s,maxn){
		if(maxn==null) maxn=20
		s=s+""
		if (s.indexOf("<")>=0) maxn=9999
		
		return '<a target=_blank '+(s.length>maxn?"title='"+s+"' ":"")+'href=http://w0.5ilog.com/cgi-bin/bbs/fast11/v_all.aspx?j=0&id='
			+id+">"+(s.length>maxn?s.substring(0,maxn)+"...":s)+"</a>" 
	}
	,getluntanlink:function(id,s){
		return "<a target=_blank href="+this.getluntanurl(id)+">"+(s?s:"论坛")+"</a>" 
	}
	,getluntanurl:function(id){
		return 'http://w0.5ilog.com/cgi-bin/sys/link/luntan.aspx/0x'
			+id.toString(16)+".htm"
	}
	,goluntan:function(id){
		go5ilog(this.getluntanurl(id))
	}

	,winAry:{}
	
	,newin:function(url,o){
		var w=open(url)
		//this.winAry[o]=w
		this.winAry[w]=o
	}
	
	,getOpenerObj:function(w){
		return this.winAry[w]
		for(var o in this.winAry)
			if (this.winAry[o]==w) return o
	}

	,getDialog:function(){
		if (!this.dialog){
			this.dialog=new OnlyOneDialog()
			return this.dialog
		}
		this.dialog.Close()
		return this.dialog
	}

	,CloseDialog:function(){
		if (this.dialog)
			this.dialog.Close()
	}
	
	,getCname:function(cx,cy,cname){
		if (cname){
			this.CITYNAME[cx+","+cy]=cname
		}
		var c=this.CITYNAME[cx+","+cy]
		var s="("+cx+","+cy+")"
		if (!c) return s
		return c+s
	}
	
	,cp_juli:function(sxy,txy){
		sxy=sxy.split(",")
		txy=txy.split(",")
		return this.cp_juli4(sxy[0],sxy[1],txy[0],txy[1])
	}
	,cp_juli4:function(sx,sy,tx,ty){
		return Math.ceil(Math.sqrt((sx-tx)*(sx-tx)+(sy-ty)*(sy-ty)))
	}
	
	,cp_wjtime:function(wj,mapx,mapy){
		var juli=this.cp_juli4(wj.cx,wj.cy,mapx,mapy)
		return juli*75+60
	}
	,cp_wjjiasutime:function(wj,mapx,mapy){
		var juli=this.cp_juli4(wj.cx,wj.cy,mapx,mapy)
		return juli*25+60
	}
	,get_minxin:function(minxin){
		return Math.floor(minxin/1000000)
	}
	,get_minxinC:function(minxin,bz){
		return Math.floor(Math.sqrt(minxin)/100)*(bz&4096?2:1)/100
	}
	,get_minxinCKJ:function(minxin,bz){
		minxin=Math.floor(minxin/1000000)
		return Math.floor(minxin*minxin*minxin*(bz&4096?2:1)*2/10000)/100
	}
	,get_minxinCZZ:function(minxin,bz){
		minxin=Math.floor(minxin/1000000)
		return Math.floor(minxin*minxin*(bz&4096?2:1)*171/10000)/100
	}
	,get_minxinCJZ:function(minxin,bz){
		return Math.floor(minxin/1000000)*(bz&4096?2:1)/100
	}
	
	
	
	,getWZobj:function(ztype){
		var o
		if (ztype<1000) {
			o=CityObj.prototype.zyAry[ztype]
			o.n=_ZY
		}else{
			 o=_BingZhuangAry.getobj(ztype-1000)
			 o.n=_Ren
		}
		return o
	}

	,getWZOption:function(ztype){
			var s=""
			var a=CityObj.prototype.zyAry
			for (var i=0;i<a.length-1;i++)
				s+="<option "+(i==ztype?"selected ":"")+"value="+i+">"+a[i].name

			var a=_BingZhuangAry.a
			for (var i in a){
				i=parseInt(i)
				if (i<100 && i>0) s+="<option "+(i+1000==ztype?"selected ":"")+"value="+(i+1000)+">"+a[i].name
			}
				
			return s
		}


	//可容纳物资数
	,cpWZN:function(name,rl){
		switch(name){
			case "ls":
			case "mu":
			case "jin":
			case "shi":
			case "tie":
				return rl
			case "bq_qiang":
			case "bq_ji":
			case "bq_gong":
			case "bq_ma":
				return rl
			case "bq_chongche":
			case "bq_toushiche":
				return rl/10
		}
	}
	,cp_rl:function(ztype,n){
		if (ztype==1020 || ztype==1021) return n*10
		return n
	}
	
	,getChongZhiHTML:function(nolijin){
		return "当前元宝：<span class=note id=yb>"+_ZhuGong.yb+"</span>　<a class=green href=javascript:chongzhi()>充值、介绍朋友赢元宝</a>"
		+(nolijin?"":"　　当前礼金：<span class=note id=lijin>"+_ZhuGong.lijin+"</span>")
	}

//检查是否选择了
	,getCheckedCheckBox:function(theCheckBox){
		if (theCheckBox==null) return ""
		var ids=ToArray(theCheckBox)
		var s=""
		for (var i=0,l=ids.length;i<l;i++)
        if (ids[i].checked) s+=","+ids[i].value
		return s?s.substr(1):s
	}
	
	,setwjfenlei:function(uids,fenlei){
		var url="&uid="+uids+"&fenlei="+encodeURIComponent(fenlei)

		var oo=_DoXMLAct("SetFenLeiWJ",url)
		if (_XMLERROR(oo)) return false
		
		if (Form.data==self._WJAry) Form.refresh()
	}

	,hiddenNextDiv:function(t){
		t=t.nextSibling
		t.style.display=t.style.display=="none"?"":"none"
	}

,getjiangliHTML:function(s,fenge){
	if (!s)	return ""
	
	var jstr=""
	fenge=fenge?fenge:"，"

	var a=s.split(",")
	for (var i in a){
		var b=a[i].split(/[=<#]/g)
		var name= b[0]
		
		var n=parseInt(b[1])
    if (/^w\d+$/.test(name)){
        //物品
        var w=_BaoWuAry.getobj(name.substr(1))
        s="<span class=green>"+w.name+"</span>"+n+"个"
        jstr+=fenge+s
      	continue
     }

    if (_StartWith(name,"bq_")){
        //兵器
        s=_BingZhuangAry.getnamebyid(name)+n+"个"
        jstr+=fenge+s
      	continue
     }

		var s
    switch(name){
    	case "guanzhi":
    	case "juewei":
        s=name=="guanzhi"?"获得官职："+_GuanZhiAry.getname(n):"获得爵位："+_JueWeiAry.getname(n)
        break
      case "lijin":
      	s="礼金"+n+"个"
      	break
      case "wjn_max":
      	s="可招募将领数增加"+n+"个"
      	break
      case "cityn_max":
      	s="可占领城池数增加"+n+"个"
      	break
      case "juangu":
      	s="眷顾值增加<span class=note>"+n+"</span>"
      	break
      default:
      	var o=this.c.CityDic[name]
      	if (!o){
      		alert('非法citydic name='+name)
      	}else
      		s=o.name+n
		}     
     
		jstr+=fenge+s
	}
	return jstr.substring(fenge.length)
}

,_cnn:["零","一","二","三","四","五","六","七","八","九","十"]
,CN:function(i){
	return this._cnn[i]
}

,shareWJ:function(bz,wj,f,O){
		if (bz==0 && !_ZhuGong.unionid){
			alert("还没有加入联盟！")
			return
		}
		if (bz==2 && _ZhuGong.shifuid==null){
			alert("还没有师门！")
			return
		}

		var d=new Dialog(null,true)
		d.setTitle("共享将领信息到"+(bz==0?"联盟":"师门"))
		d.setHTML("<div class=text>注意［共享将领］后，一旦其他玩家追踪该将领，你将获得元宝或礼金奖励，但同时你将和该将领失去联系。<BR><span class=note>"+wj.wjname
			+"</span>共享说明，可填写已经确知的登录要求供其他玩家参考</div><textarea rows=20 cols=60 id=fuzhu></textarea><BR><input id=btn type=button class=btn value='共享'>")
		d.c.all.btn.onclick=function(){
			var fuzhu=d.c.all.fuzhu.value
			if (fuzhu.length>500){
				alert("最多500字！")
				d.c.all.fuzhu.focus()
				return false
			}
			var oo=_DoXMLAct("fangxian2union","&bz="+bz+"&uid="+wj.uid+"&fuzhu="+encodeURIComponent(fuzhu))
				if (_XMLERROR(oo)) return
			if (O) O.f(wj)
				else f(wj)
			d.Close()
		}
		d.Show()
	}
	,InAry:function(a,v){
		for(var i in a)
			if (a[i]==v) return i
		return -1	
	}
	
	,init:function(){
		var h=location.host
		switch (h.charAt(0)){
			case "t": 
				this.host="t0.5isanguo.com"
				this.FH="http://"+this.host
				break
			case "d": 
				this.host="d0.5isanguo.com"
				this.FH="http://"+this.host
				break
			default: 
				this.FH=this.host=""
		}
		if (/^[td](\d+)/.test(h)){
			this.QU=parseInt(RegExp.$1)+1
			this.QUStr=this.QU+"区"
		}else
			this.QUStr=this.QU=""
		this.noteHTML="<img src="+this.FH+"/img/note.gif border=0>"
	}
}
_SGG.init()



function _URLQuery(s){
 s=s.split("&");
 for (var i=0,l=s.length;i<l;i++){
	var s1=s[i].split("=");
	if (s1.length>1){
			var t=s1[1].replace(/\+/g," ")
			try{
				this[s1[0]]=decodeURIComponent(t)
			}catch(e){
				this[s1[0]]=unescape(t)
			}
		
		}
 }//for
}

function _nameValue(s){
	this.s=s
	this.a={}
	if (s){
		var t=s.split(",")
		for (var i in t){
			var b=t[i].split("=")
			this.a[b[0]]=b[1]
		}
	}
}


function _UPStr(s){
	this.s=s
	this.a={}
	if (s){
		var t=this.s.substr(1,this.s.length-2).split(",")
		for (var i=0;i<t.length;i++){
			var b=t[i].split("=")
			this.a[b[0]]=parseInt(b[1])
		}
	}
}
_UPStr.prototype.getValue=function(id){
	if (!this.s) return 0
	var t=this.a[id]
	return t?t:0
}

function _Trim(s){
	if (s==null) return ""
	return s.toString().replace(/^\s+|\s+$/g,"")
}


function _Text2HTML(s){
	if (!s) return ""
	return s.toString().replace(/\r\n/g,"<BR>").replace(/  /g,"　").replace(/\n/g,"<BR>")
}


/****通用要求******/
function YaoQiu(){
	this.a=[] //s 提示　n需要数值　cn当前值　ok是否满足 
	this.ok=true
}

YaoQiu.prototype.getHTML=function(f,notitle){
 	if (f==null) f="，"

	var title="<table class=listtab><tr><td></td><th>需要</th><th>当前</th><th>剩余</th></tr>"
	var s=""
	for (var i in this.a){
		s+=f
		var t=this.a[i]
		var ts=t.s+(t.n?"："+t.n:"")

		title+="<tr><td class=titleTD>"+t.s+"</td><td>"

		if (t.ok) {
			s+=ts
			title+=t.n
		}	else {
			if (!notitle) title+="<span class=bugou>"+t.n.toString()+"</span>"
			s+="<span class=bugou>"+ts+"</span>"
		}
		title+="</td><td>"+_disN(t.cn)+"</td><td>"+_disN(t.cn-t.n)+"</td></tr>"
	}

	title	+="</table>"
	
	if (!s) return ""
	s=s.substr(f.length)
	
	if (notitle) return s
	
	return '<span class=zymx onmouseover=\'_ShowTabMenu("'+title+'","","","yqtishi")\' onmouseout="_HideMenu()">明细</span> '+s
}

/**************任务***********************/
var _DayRenWuAry={
	901:{subject:"黄巾军众俘虏",fuzhu:"在与黄巾军战斗有机会抓获黄巾军众，黄巾军众多是灾荒时被迫起义的普通百姓，有三个选择"
		,a:[{subject:"收编",fuzhu:"收编为空闲士兵",zyq:"w1901=-500",cyq:"",zjl:"juangu=10",cjl:"freebn=500"}
		,{subject:"斩首",fuzhu:"将俘虏斩首，送朝廷请赏",zyq:"w1901=-500",cyq:"",zjl:"juangu=10",cjl:"jin=100000"}
		,{subject:"遣送",fuzhu:"对于投降的黄巾军众，教化并发放路费遣返回乡",zyq:"w1901=-500",cyq:"jin=-100000",zjl:"juangu=10",cjl:""}
		]}
	,getobj:function(rid){
		if (rid==900){
			var j=_ZhuGong.juewei+1
			var n=Math.min(_ZhuGong.juewei*30+50,300)

			return {subject:"匪众俘虏",fuzhu:"在野地中战斗有机会抓获匪众，匪众多是被乱世所迫走上不归路的普通百姓，捕获足够数量后就可完成当日任务，并且有三个选择"
				,a:[{subject:"收编",fuzhu:"收编俘虏",zyq:"w1900=-"+n,cyq:"",zjl:"juangu="+j,cjl:"freebn="+n}
				,{subject:"斩首",fuzhu:"将俘虏斩首，送朝廷请赏",zyq:"w1900=-"+n,cyq:"",zjl:"juangu="+j,cjl:"jin="+n*50}
				,{subject:"遣送",fuzhu:"对于投降的匪众，教化并发放路费遣返回乡",zyq:"w1900=-"+n,cyq:"jin=-"+n*50,zjl:"juangu="+j,cjl:""}
				]}
		}
		if (rid==901) return this[901]
		
		
	}
}


function RenWuDuoXuanObj(o,c){
	this.subject=o.subject
	this.fuzhu=o.fuzhu
	this.c=c
	this.a=[]
	this.ok=false
	for(var i=0;i<o.a.length;i++){
		var oo=o.a[i]
		var t=this.a[i]=new RenWuObj(oo,c)
		t.subject=oo.subject
		t.fuzhu=oo.fuzhu
		t.endrq=oo.endrq
		t.bz=oo.bz
		
		if (t.ok)this.ok=true
	}
}

function RenWuObj(o,c){
	for(var i in o)	this[i]=o[i]
	this.c=c
	this.z=_ZhuGong

	this.ok=true
	this.jiangli=""
	
	if (this.zyq!=null) this.zhugongyaoqiu=this.zyq
	if (this.zjl!=null) this.zhugongjiangli=this.zjl
	if (this.cyq!=null) this.cityyaoqiu=this.cyq
	if (this.cjl!=null) this.cityjiangli=this.cjl


	this.getYaoQiu()
	this.getJiangLi()
	
}

RenWuObj.prototype.getYaoQiu=function(){
	this.yaoqiuary=this.c.getYaoQiu(this.zhugongyaoqiu+','+this.cityyaoqiu)
  this.ok=this.yaoqiuary.ok
}

RenWuObj.prototype.getJiangLi=function(fenge){
	var s=this.zhugongjiangli
	if (this.cityjiangli){
		if (s) s+=","
		s+=this.cityjiangli
	} 
	if (!s)	return ""
	
	var jstr=""
	fenge=fenge?fenge:"，"

	var a=s.split(",")
	for (var i in a){
		var b=a[i].split(/[=<#]/g)
		var name= b[0]
		
		var n=parseInt(b[1])
    if (/^w\d+$/.test(name)){
        //物品
        var w=_BaoWuAry.getobj(name.substr(1))
        s="<span class=green>"+w.name+"</span>"+n+"个"
        jstr+=fenge+s
      	continue
     }

    if (_StartWith(name,"bq_")){
        //兵器
        s=_BingZhuangAry.getnamebyid(name)+n+"个"
        jstr+=fenge+s
      	continue
     }

		var s
    switch(name){
    	case "guanzhi":
    	case "juewei":
        s=name=="guanzhi"?"获得官职："+_GuanZhiAry.getname(n):"获得爵位："+_JueWeiAry.getname(n)
        break
      case "lijin":
      	s="礼金"+n+"个"
      	break
      case "wjn_max":
      	s="可招募将领数增加"+n+"个"
      	break
      case "cityn_max":
      	s="可占领城池数增加"+n+"个"
      	break
      case "juangu":
      	s="眷顾值增加"+n
      	break
      default:
      	var o=this.c.CityDic[name]
      	if (!o){
      		alert('非法citydic name='+name)
      	}else
      		s=o.name+n
		}     
     
		jstr+=fenge+s
	}
	return jstr.substring(fenge.length)
}

function RenWuData(){
	var o=new DataBase()
	o.initData=function(){

		_ZhuGong.resetXML(this.oXml)

	this.endrid=-1
	this.renwuary={100:[],200:[]}
	this.renwuaryAll={}
	
	this.c=this.oXml.selectSingleNode("//city")
	if (this.c) this.c=new CityObj(this.c)
	
		var rs=this.oXml.selectNodes("//renwu/row")
		if (rs.length>0){
			for (var i=rs.length-1;i>=0;i--){
				var r=new RenWuObj(_XML2Obj(rs[i]),this.c)
				var a=this.renwuary[r.fenlei]
				if (!a) this.renwuary[r.fenlei]=a=[]
				a.push(r)
				this.renwuaryAll[r.rid]=r
				if (r.ok && r.ok!=999) this.endrid=r.rid
			}
		}

		rs=this.oXml.selectNodes("//renwuevent/row")
		if (rs.length>0){
			var t=_XML2Obj(rs[0].parentNode)
			this.renwun=t.renwun
			this.renwu_huan=t.renwu_huan
			var eary={}
			for (var i=rs.length-1;i>=0;i--){
				var r=_XML2Obj(rs[i])
				if (!eary[r.rid])eary[r.rid]=[]
				eary[r.rid][r.sn]=r
			}
			
			for(var i in eary){
				var t=eary[i]
				i=parseInt(i)
				var r
				if (t.length==1){
					r=new RenWuObj(t[0],this.c)
					if (r.ok) this.endrid=i
				}else{
					t[0].a=t.slice(1)
					var c
					if (t[0].cx!=null){
						//指定了city
						c=this.oXml.selectSingleNode("//eventcity[@cx="+t[0].cx+" and @cy="+t[0].cy+"]")
						if (c) c=new CityObj(c)
							else c=this.c
					}
					r=new RenWuDuoXuanObj(t[0],c)
					this.endrid=i
				}
				r.rid=i
				this.renwuary[200].push(r)
				this.renwuaryAll[r.rid]=r
			}
		}



		var rq=_disDate(_SGG.SRQ())
		var a=_ZhuGong.dayrenwustr.split(/,/g)
		for(var i in a){
			var b=a[i].split("=")
			if (b[0]!="1" && (b[1]!=rq)){
				var t=_DayRenWuAry.getobj(b[0])
				if (!t) continue
				var r=new RenWuDuoXuanObj(t,this.c)
				r.rid=parseInt(b[0])
				this.renwuary[100].push(r)
				this.renwuaryAll[r.rid]=r
			}
		}

		this.DisRenWu()
	}
	
	o.getrenwu=function(rid){
		return this.renwuaryAll[rid]
	}
	
  o.getData=function(otherCanShu){
		if (!otherCanShu) {
			otherCanShu=""
			if (self._CityAry){
				if (_CityAry.c){
					otherCanShu="&cx="+_CityAry.c.cx+"&cy="+_CityAry.c.cy
				}
			}
		}
		this.prepareData("Act.aspx?act=renwuend"+otherCanShu)
  }

	o.RenWuEnd=function(rid){
			var oo=_DoXMLAct("renwuend","&cx="+this.c.cx+"&cy="+this.c.cy+"&rid="+rid)
			if (_XMLERROR(oo)) return false
			this.dialog.change=true
			this.resetXML(oo)
	}
	
	o.DayRenWuEnd=function(rid,x){
			var oo=_DoXMLAct("dayrenwuend","&cx="+this.c.cx+"&cy="+this.c.cy+"&rid="+rid+"&xuanze="+x)
			if (_XMLERROR(oo)) return false
			this.dialog.change=true
			this.resetXML(oo)
	}

	o.DayFengLu=function(rid){
			var oo=_DoXMLAct("DayFengLu","&cx="+this.c.cx+"&cy="+this.c.cy)
			if (_XMLERROR(oo)) return false
			this.dialog.change=true
			this.resetXML(oo)
	}

	o.genghuan=function(rid,isyb){
			var oo=_DoXMLAct("EventRenWuGengHuan","&rid="+rid+"&isyb="+isyb)
			if (_XMLERROR(oo)) return false
			this.currid="genghuan"
			this.resetXML(oo)
	}

	o.EventRenWuEnd=function(rid,sn){
			var oo=_DoXMLAct("EventRenWuEnd","&cx="+this.c.cx+"&cy="+this.c.cy+"&rid="+rid+"&sn="+sn)
			if (_XMLERROR(oo)) return false
			var r=_XML2Obj(oo.documentElement)
			if (r.tishistr){
				var s=_SGG.getList(r.tishi)
				alert(r.tishistr+s)
			}
			this.dialog.change=true
			this.resetXML(oo)
	}

	o.disdayrenwu=function(td){
		o.focus(td)
		var s="<div class=text><div class=t1>今日俸禄</div><div class=renwufuzhu>"
			+"　　当您拥有爵位或者官职时，每日除了眷顾值外，还可领取到一定俸禄。<BR><BR>注意俸禄不累积，当日不领作废</div><hr>"
		var i=_ZhuGong.getDayFengLu()
		if (i)			
			s+="<span class=note>"+_GuanZhiAry.getname(_ZhuGong.guanzhi)+"</span>：金 "+i
		i=_ZhuGong.getDayShiYi()
		if (i) s+="<BR><span class=note>"+_JueWeiAry.getname(_ZhuGong.juewei)+"</span>：粮木砖铁各 "+i
		
		s+="<BR>获得宝物："+_H("特技符","green")+"2，"
		+_H("属性符","green")+"2，<span class=note>急送符</span>3，<span class=note>急行军符</span>3，<span class=note>锻造符</span>1，<span class=note>鬼斧符</span>1，<BR><span class=note>小气力符</span>10，<span class=note>中气力符</span>5，<span class=note>超气力符</span>2，<span class=note>传声符</span>25，"
		+"<span class=note>眷顾值</span>1，<span class=note>礼金</span>9"
		
		s+=_SGG.getAllText("<BR><BR>开启[宝箱翻番]后额外获得：<span class=note>急行军符1，归位符1</span>")
		s+=_ZhuGong.getbaowuaddendrq(493)?"<span class=green>宝箱翻番当前开启</span>":" <a href=# onclick='_ZhuGong.DisBaoWu(493);return false'>开启宝箱翻番</a>"
		s+="<BR>注意：礼金总数超过200，传声符超过40，小气力符超过10，中气力符超过5，其他宝物超过2，将不再赠送。礼金该如何使用？请见："+_H("礼金用途","green")
		+"<BR><BR><input class=btn1 type=button onclick=_RenWu.DayFengLu() value='领取'>"
		if(_ZhuGong.lijin>200) s+="<div class=bugou>警告：当前礼金超过200将不再赠送</div>"
		if(_ZhuGong.getBaoWu(321)>2) s+="<div class=bugou>警告：当前急行军符超过2将不再赠送</div>"
		if(_ZhuGong.getBaoWu(1226)>2) s+="<div class=bugou>警告：当前急送符超过2将不再赠送</div>"
		if(_ZhuGong.getBaoWu(1271)>2) s+="<div class=bugou>警告：当前锻造符超过2将不再赠送</div>"
		if(_ZhuGong.getBaoWu(1272)>2) s+="<div class=bugou>警告：当前鬼斧符超过2将不再赠送</div>"
		if(_ZhuGong.getBaoWu(1250)>2) s+="<div class=bugou>警告：当前特技符超过2将不再赠送</div>"
		if(_ZhuGong.getBaoWu(1257)>2) s+="<div class=bugou>警告：当前属性符超过2将不再赠送</div>"

		renwucontent.innerHTML=s+"</div>"
	}
	o.focus=function(td){
		var rows=this.dialog.c.all.renwumenutab.rows
		for (var i=1;i<rows.length;i++){
			var t=rows[i].cells(0)
			if (!t.onmouseover) continue
			t.className=t==td?"menu sel":"menu unsel"
		}
		this._currid=td.getAttribute("rid")
	}
	
	o.dis=function(td){
		o.focus(td)
		var rid=td.getAttribute("rid")
		var r=o.getrenwu(rid)
		renwucontent.innerHTML=this._dis(r,(r.bz&8?"Day":"")+"RenWuEnd")
	}

	o._dis=function(r,funcname){
		var s="<div class=text><div class=title>"+this.subbz(r.bz)+r.subject+"</div>"
		s+="<div class=t1>任务奖励</div>"+r.getJiangLi()
		s+="<BR><input type=button onclick=_RenWu."+funcname+"("+r.rid+") value='"+(r.ok==999?"如果完成则领取奖励":"领取奖励")+"'"
		if (!r.ok) s+=" disabled"
		s+=">　<span class=red>浪费可耻！</span>领取前请一定注意仓库和粮仓剩余容量"
		
		s+="<HR><div class=t1>任务说明</div><div class=renwufuzhu>"
			+_SGG.getAllText(r.fuzhu)+"</div><hr><div class=t1>任务要求</div>"


		for (var i in r.yaoqiuary.a){
			var t=r.yaoqiuary.a[i]

			s+=t.s+(t.n?_disN(t.n):"")
			if (t.ok==999){
				s+=" <span class=wancheng>需检查</span><BR>"
			}else if (t.ok){
				s+=" <span class=wancheng>完成</span><BR>"
			}else{
				s+=" <span class=weiwan>未完成"+(t.cn?"，当前"+t.cn:"")+"</span><BR>"
			}
		}

		return s+"</div>"
	}
	
	o._dis2=function(r,funcname){
		
		var s="<div class=text><div class=title>"+r.subject+"</div><BR><div class=t1>任务说明</div><div class=renwufuzhu>"
			+_SGG.getAllText(r.fuzhu)+"</div><hr><table width=100%><tr>"
			
		for(var j in r.a){
			s+="<td style='width:33%;text-align:left'><div class=t1>任务要求</div>"
			var rr=r.a[j]
			for (var i in rr.yaoqiuary.a){
				var t=rr.yaoqiuary.a[i]
	
				s+=t.s+(t.n?_disN(t.n):"")
				if (t.ok){
					s+=" <span class=wancheng>完成</span><BR>"
				}else{
					s+=" <span class=weiwan>未完成"+(t.cn?"，当前"+t.cn:"")+"</span><BR>"
				}
			}

			s+="<hr><div class=t1>任务奖励</div>"+rr.getJiangLi("<BR>")
			s+="<center><input type=button onclick=_RenWu."+funcname+"("+r.rid+","+(parseInt(j)+1)+") value='"+rr.subject+"'"
			if (!rr.ok) s+=" disabled"
			s+="></center><BR><div class=text>"+_SGG.getAllText(rr.fuzhu)+"</div></div></td>"
		}
		s+="</tr></table>"
		return s
	}
	
	o.dis2=function(td){
		o.focus(td)
		var rid=td.getAttribute("rid")
		var r=o.getrenwu(rid)
		renwucontent.innerHTML=this._dis2(r,"DayRenWuEnd")
	}

	o.diswenda=function(td){
		o.focus(td)
		var s=getNoteText("<div class=text><div class=t1>三国问答</div><div class=renwufuzhu>"
			+"　　每日接受三国知识测验，如果回答正确，奖励不菲哦！<BR><BR>注意：<BR>1.问题如果不另作说明则以［三国演义］为准<BR>"
			+"2.［连续正确数］越高，眷顾奖励越高<BR>3.问题回答时间只有［15秒］！请选择网络畅通时回答，答题速度也一定要快，每天只有一次机会<BR>")
			+"<BR>当前回答问题数：<span class=note>"+_ZhuGong.wendan+"</span>　正确数：<span class=note>"
			+_ZhuGong.wendan1+"</span>　正确率：<span class=note>"
			+(_ZhuGong.wendan?Math.floor(_ZhuGong.wendan1*10000/_ZhuGong.wendan)/100:"-")+"%</span>　连续正确数：<span class=note>"
			+_ZhuGong.wendalianxun+"</span><BR><input type=button onclick=DoDisWenDa() value='回答问题'></div>"
		renwucontent.innerHTML=s
	}
o.distreeDay=function(){
	if (this.renwuaryAll["1"]) return ""
	
		var s=""
		var haveday=_ZhuGong.haveDayFengLu()
		if (haveday){
			s+="<tr><Td onmouseover=_RenWu.disdayrenwu(this)>　<span class=wancheng>今日俸禄</span></td></tr>"
		}

		var wenda=_ZhuGong.getwendarenwu()
		if (wenda){
			if (wenda==1)
				s+="<tr><Td onmouseover=_RenWu.diswenda(this)><span class=noterenwu>★</span><span class=wancheng>三国问答</span></td></tr>"
			else
				DoDisWenDa(wenda)
		}
		
		

		var a=this.renwuary[100]
		for (var i in a){
			var o=a[i]
			s+="<tr><Td rid="+o.rid+" onmouseover=_RenWu.dis"+(o.constructor==RenWuObj?"":"2")+"(this)>　<span class='"+(o.ok?"wancheng":"")+"'>"
				+o.subject+(o.ok?"　完成":"")+"</span></td></tr>"
		}
		if (s)return "<tr><td class='titleTD renwufenlei'>日常任务</td></tr>"+s
		return ""
	}
	


	o.disE=function(td){
		o.focus(td)
		var rid=td.getAttribute("rid")
		var r=o.getrenwu(rid)

		var s=this._dis(r,"EventRenWuEnd")
		+"<BR>今日已经完成任务："+this.renwun+"，已经更换次数："+this.renwu_huan+"<BR>"
		
		if (this.renwu_huan>=3)
			s+=_BaoWuAry.getBtn(1224)
		else
			s+="<input type=button value='更换任务' onclick='_RenWu.genghuan("+r.rid+")'>"
		
		s+=_ZhuGong.getbaowuaddendrq(493)?" <span class=green>宝箱翻番开启</span>":" <a href=# onclick='_ZhuGong.DisBaoWu(493);return false'>开启宝箱翻番</a>"
	
		s+=_SGG.getAllText("<div class=text>注意：每日15点前后可各完成10个任务，免费更换3次任务；但部分任务无法更换<BR>[事件任务]奖励及其详细说明</div>")
	
		renwucontent.innerHTML=s
		if (this.renwu_huan>=3){
			_BaoWuAry.setBtnOnclick(renwucontent.all,1224,function(){
				var e=event.srcElement
				_RenWu.genghuan(r.rid,e.getAttribute("isyb"))
			})
		}
	}
	
	o.disE2=function(td){
		o.focus(td)
		var rid=td.getAttribute("rid")
		var r=o.getrenwu(rid)

		var s="<div class=text><div class=title>"+r.subject+"</div><BR><div class=t1>任务说明</div><div class=renwufuzhu>"
			+_SGG.getAllText(r.fuzhu)+"</div><hr><table width=100%><tr>"
			
		for(var j in r.a){
			s+="<td style='width:33%;text-align:left' valign=top><div class=t1>任务要求</div>"
			var rr=r.a[j]
			for (var i in rr.yaoqiuary.a){
				var t=rr.yaoqiuary.a[i]
	
				s+=t.s+(t.n?_disN(t.n):"")
				if (t.ok){
					s+=" <span class=wancheng>完成</span><BR>"
				}else{
					s+=" <span class=weiwan>未完成"+(t.cn?"，当前"+t.cn:"")+"</span><BR>"
				}
			}

			s+="<hr><div class=t1>任务奖励</div>"+rr.getJiangLi("<BR>")
			if (rr.endrq) s+="<HR><div class=t1>截止日期</div>"
				+_SGG.getXMLRQNoSec(rr.endrq)+"<BR>还剩：<span class=red id=TIME>"+this.getSYTimeStr(rr.endrq,5)+"</span>"
			s+="<center><input type=button onclick=_RenWu.EventRenWuEnd("+r.rid+","+(parseInt(j)+1)+") value='"+rr.subject+"'"
			if (!rr.ok) s+=" disabled"
			s+="></center><BR><div class=text>"+_SGG.getAllText(rr.fuzhu)+"</div></div></td>"
		}
		s+="</tr></table>"

		+"<BR>今日已经完成任务："+this.renwun+"，已经更换次数："+this.renwu_huan+"<BR>"
		
		s+="<div class=text>注意：必须在指定时间前完成任务，否则使用第一选择完成任务</div>"
		
		renwucontent.innerHTML=s
	}

o.distreeEvent=function(){
		var s=""
		var a=this.renwuary[200]
		for (var i in a){
			var o=a[i]
			if (o.constructor==RenWuObj)
				s+="<tr><Td rid="+o.rid+" onmouseover=_RenWu.disE(this)>　<span class='"+(o.ok?"wancheng":"")+"'>"
				+o.subject+(o.ok?"　完成":"")+"</span></td></tr>"
			else
			s+="<tr><Td rid="+o.rid+" onmouseover=_RenWu.disE2(this)><span class='red'>"
				+o.subject+"</span></td></tr>"
		}
		if (s)return "<tr><td class='titleTD renwufenlei'>事件任务</td></tr>"+s
		return ""
	}
	o.distree=function(name,f){
		var a=this.renwuary[f]
		if (!a)return ""
		
		var s="<tr><td class='titleTD renwufenlei'>"+name+"</td></tr>"
		
		for (var i in a){
			var o=a[i]
			s+="<tr><Td rid="+o.rid+" onmouseover=_RenWu.dis(this)>"
				+this.subbz(o.bz)+"<span class='"
				+(o.ok?"wancheng":"")+"'>"
				+o.subject+(o.ok?"　"+(o.ok==999?"检查":"完成"):"")+"</span></td></tr>"
		}
		return s
	}
	o.subbz=function(bz){
		var s=""
		if(bz&4) s+="★"
		if(bz&0x10) s+="★★"
		if(s) return "<span class=noterenwu"+s.length+">"+s+"</span>"
		return ""
	}


o.DisRenWu=function(){
	var s1=this.distreeDay()+this.distreeEvent()+this.distree("军事",30)+this.distree("人才",20)+this.distree("建设",10)
		+this.distree("科技",40)+this.distree("其他",50)
		
	if (!s1){
		this.dialog.setHTML("暂时没有任务...")
		return
	}
	
	var s="<table class=renwutab width=100%><tr><td class=text><span class=noterenwu3>★★★</span>主线任务，完成后可获得后续关键任务；<span class=noterenwu2>★★</span>关键任务，越早完成越好；<span class=noterenwu1>★</span>重要任务，优先完成</td><td align=right><a href=javascript:DoDisJuQing()>剧情任务</a></td></tr></table>"
	+"<table id=renwutab class='listtab renwutab'><tr><td class=renwumenutd><div"+(_SGG.IE7?" dir=rtl":"")+" style='height:420px;overflow:auto;'>"
	+"<table id=renwumenutab class=listtab><tr><th>当前任务列表</th></tr>"
		+s1+"</table><a href=javascript:_viewwz(281)>新手帮助快速索引</a></div></td><td style='border-left:0px' valign=top>"
	if (_ZhuGong.cityn>1){
		s+="<div class=text><span class=note>关联城市</span>：<select onchange='_RenWu.currid=_RenWu._currid;_RenWu.getData(this.options[this.selectedIndex].getAttribute(\"url\"))'>"+_ZhuGong.getCityOption(this.c.cx+","+this.c.cy)+"</select>"
			+"完成条件针对城市的须切换到合适城市才能完成</div>"
		
	}
		
	s+="<div id=renwucontent></div></td></tr></table>"
	
	this.dialog.setHTML(s)
	
	var rows=this.dialog.c.all.renwumenutab.rows
	var td
	if (this.currid) {
		if (this.currid=="genghuan"){
			var a=this.renwuary[200][0]
			if (a) this.endrid=a.rid
		}else
			this.endrid=this.currid
		this.currid=null
	}
	
	if (!this.endrid){
		td=rows(2).cells(0)
	}else {
		for(var i=1;i<rows.length;i++)
			if (rows(i).cells(0).getAttribute("rid")==this.endrid) {td=rows(i).cells(0);break}
		if (!td) td=rows(2).cells(0) //skip fenlei
	}
	td.onmouseover(td)
	
}

o.bookmark=function(){
		bookmarkit("http://www.5isanguo.com","我爱三国 网页游戏")
		_ZhuGong.bookmark=1
		this.currid=this._currid;
		this.getData()
	}
o.inputurl=function(){
		var d=new Dialog(null,true)
		
		var s="<input type=text class=input id=kkk>(请输入 www.5isanguo.com )<BR><input id=btn type=button value='完成' class=btn>"
		d.setTitle("输入我爱三国网址")
		d.setHTML(s)
		d.c.all.btn.onclick=function(){
			if (d.c.all.kkk.value.toLowerCase().replace(/ /g,"")=="www.5isanguo.com"){
				d.Close()
				_ZhuGong.inputurl=1
				o.currid=o._currid;
				o.getData()
			}else{
				alert("输入错误！请输入www.5isanguo.com")
				d.c.all.kkk.focus()
			}
		}
		
		d.Show()
	}

	return o
}

function DoDisRenWu(){
	if (!self._RenWu)
		_RenWu=new RenWuData()
		
		var d=_RenWu.dialog=new Dialog(_RenWu)
		d.setHTML("数据读取中...")
		d.setTitle("")
		d.style.top=_SGG.imgver?"180px":"120px"
		//d.style.height="300px"
		d.Show()
		d.close=function(){
			if (this.change && Form.data==self._CityAry)
				Form.refresh()
		}


		_RenWu.getData()
}

function _GetHYJ(idname,a,c,tail,tailwidth){
	var s="<table id='"+idname+"' class=HYJ><tr>"
	var div=""
	
	for (var i=0;i<a.length;i++){
		s+="<td onmouseover='this.style.color=\"red\"' onmouseout='this.style.color=\"\";' class=hyj"
			+(i?"off":"on")+" onclick='_SetHYJOn()'><nobr>"+a[i]+"</nobr></td>"
		div+="<div "+(i?" style='display:none'":"")+"class=hyjdiv id=hyj"+i+">"+(c&&c[i]?c[i]:"")+"</div>"
	}
	s+="<td class=hyjtail"+(tailwidth?" style='width:"+tailwidth+"'":"")+">"+(tail?tail:"")+"</td></tr><tr><td class=hyjbody colspan="+(a.length+1)+">"+div+"</td></tr></table>"
	return s
}

function _initHYJ(h,clickfunc){
	h.setHYJOn=_SetHYJOn
	h.setHTML=function(i,html){
		_GetAllInDiv(h,"hyj"+i).innerHTML=html
	}
	h.appendHTML=function(i,html){
		_GetAllInDiv(h,"hyj"+i).insertAdjacentHTML("beforeend",html)
	}
	h.getDIV=function(i){
		return _GetAllInDiv(h,"hyj"+i)
	}
	h.resetHTML=function(i){
		var d=h.getDIV(i)
		d.innerHTML=d.innerHTML
	}


	h.getTD=function(i){
		return h.rows(0).cells(i)		
	}
	h.clickfunc=clickfunc
	h.seton=0
}

function _SetHYJOn(j){
	var td,tr,table
	if (j==null){
		//直接点击必须有event
		td=FindTag(event.srcElement,"TD")
		tr=td.parentElement
		table=FindTag(td,"TABLE")
		_SGG.setA()
	}else{
		//直接设置，必须通过table设置
		table=this
		tr=table.rows(0)
		var m=tr.cells.length-2
		if (j<0)j=0
		else if (j>m) j=m
		td=tr.cells(j)
	}
	td.className="hyjon"

	for(var i=0;i<tr.cells.length-1;i++){
		var t=tr.cells[i]
		if (t!=td) {
				t.className="hyjoff"
				table.all["hyj"+i].style.display="none"
		}else{
				table.all["hyj"+i].style.display=""
				table.seton=i
		}
	}
	if (table.clickfunc)
		table.clickfunc(table.seton)
	
}



/********Msg********/

function MsgData(){
	var o=new DataBase()
  o.initData=function(){
		
		msglink.b=false
		msglink.className=""
		
		var s=getNoteText("<div class=text><input type=button class=btn value='写信' onclick='SendMsg()'>"
		+"<BR>注意：<BR>　　这里都是玩家之间的信函，站方绝对不会通过写信与玩家交流或者发布任何通知！<BR>"
		+"如果提示［中奖］［元宝买卖］之类肯定是骗子，请即可到论坛反馈，将有举报奖励！")
		+"</div><form><table class='listtab Msgtab'><TR><th>编号</th><th>日期</td><th>标题</td><Th>发信人</TD></tr>"
		
		var a=_MsgAry.oXml.selectNodes("/root/row")
		
		_MsgAry.a={}
	
	  for (var i=0;i<a.length;i++){
	  	var t=_XML2Obj(a[i])
	  	_MsgAry.a[t.id]=t
	  
	  	s+="<tr"+(i&1?" class=tr1":"")+"><td><input type=checkbox name=ids value="+t.id+">"+t.id+"</td><td>"+_SGG.getXMLRQStr(t.rq)+"</td><td>"+this.getlink(t)+"</td><td>"
	  		+GetZhuGongLink({zuid:t.fromzuid,zname:t.fromzname})+"</td></tr>"
	  }
		s+="</table>"
		
		s+="<table width=100%><tr><td><a href=javascript:_MsgAry.getData()>首页</a></td><td align=right>"
		if (a.length>=10){
			s+="<a href=javascript:_MsgAry.getData('&next="+a[a.length-1].getAttribute("id")+"')>下一页</a>"
		}
		s+="</td></tr></table>"
		+"<input class=btn1 onclick=_selAllCheckBox(this.form.ids) type=button value='全选'>"
			+" <input class=btn1 onclick=_selFanCheckBox(this.form.ids) type=button value='反选'>"
			+"　　　<input id=btndel type=button class=btn value='删除'></form>"
		
		MsgDIV.innerHTML=s
		
		MsgDIV.all.btndel.onclick=function(){
				var ids=_SGG.getCheckedCheckBox(this.form.ids)
				if (!ids){
					alert("必须至少选择一个！")
					return
				}
				if (o._del(ids))
					o.getData(o.canshu)
		}
		
		_MsgAry.dialog.setTitle("信函")
  	
  }
  o._del=function(ids){
  	if (!confirm("确认删除吗？")) return false
			var oo=_DoXMLAct("delmsg","&id="+ids)
			if (_XMLERROR(oo)) return false
			return true
  }
  o.del=function(ids){
  	if (o._del(ids)){
  		o.closecontent()
  		o.getData(o.canshu)
  	}
  }
    
  o.getData=function(otherCanShu){
		if (!otherCanShu) otherCanShu=""
		this.canshu=otherCanShu
		this.prepareData("Map.aspx?act=getMsg"+otherCanShu)
  }
  
  o.getlink=function(o){
  	return "<A "+(o.bz&1?"class=viewed ":"")+"href=javascript:_MsgAry.view("
  		+o.id+")>"+o.subject+"</a>"
  }

	o.view=function(id){
		
		var o=_MsgAry.a[id]
		o.oXml=_GetXmlDoc()
		o.oXml.loadXML(o.xmlstr)
		
		if (!(o.bz&1)){
			_SendHTTP("/cgi-bin/class/SanGuo/Act.aspx?act=readmsg&id="+id)
			o.bz|=1
		}
		o.subject=o.subject+""
		var rsub=o.subject.indexOf("回复")>=0?"":"回复："+o.subject
		MsgContentDIV.innerHTML="<div class=title><table width=100%><tr><td class=titleTD>第"+o.id
			+"号信函</td><td>"+o.subject+"</td></tr></table></div>"
			+"<table class=listtab width=100%><tr><td class=titleTD>发信人</td><td>"
			+GetZhuGongLink({zuid:o.fromzuid,zname:o.fromzname})
			+"</td><td class=titleTD>时间</td><td>"+_SGG.getXMLRQStr(o.rq)+"</td></tr></table>"
			+"</div><div class=text>"+_Text2HTML(o.fuzhu)
			+"</div><BR><center><input class=btn type=button onclick='SendMsg(\""+o.fromzname
				+"\",\""+rsub+"\")' value=回信> <input class=btn type=button onclick='_MsgAry.closecontent()' value=关闭>"
				+"　　　<input class=btn type=button onclick='_MsgAry.del("+o.id+")' value=删除></center>"
		MsgDIV.style.display="none"
		MsgContentDIV.style.display="block"
		
	}
	o.closecontent=function(){
		MsgDIV.style.display="block"
		MsgContentDIV.style.display="none"
	}
	

	return o	
}

function DoDisMsg(url){
	if(!self._MsgAry)_MsgAry=new MsgData()
	
	var d=new Dialog(_MsgAry,true)
	d.setHTML("<div id=MsgDIV></div><div id=MsgContentDIV></div>")
	d.Show()
	
	_MsgAry.dialog=d
	
	_MsgAry.getData(url)
}
 
function SendMsg(tozname,subject){
	subject=subject?subject:""
	tozname=tozname?tozname:""
	var d=new Dialog(null,true)
	d.style.width="400px"
	//d.style.height="400px"
	d.setHTML("<div class=text><form id=sendmsgform>收信人：<input name=tozname style='width:300px' class=input value='"+tozname
		+"'><BR>标　题：<input maxlength=50 name=subject style='width:300px' class=input value='"+subject
		+"'><BR>正　文：<BR>　　　　<textarea name=fuzhu style='width:300px;height:300px'></textarea></form></div><center><input id=sendmsgbtn class=btn value='发送' type=button></center>")
	d.setTitle("发信")
	
	d.c.all.sendmsgbtn.onclick=function(){
		var f=d.c.all.sendmsgform
		if (!f.tozname.value){
			alert('必须填写收信人！')
			f.tozname.focus()
			return 
		}
		if (!f.subject.value){
			alert('必须填写标题！')
			f.subject.focus()
			return 
		}
		if (f.fuzhu.value.length>2000){
			alert('正文长度不能超过2000字！当前有'+f.fuzhu.value.length+"字")
			f.fuzhu.focus()
			return 
		}

		if (f.subject.value==subject){
			if (f.fuzhu.value==""){
				alert("你还什么都没写啊！")
				f.fuzhu.focus()
				return 
			}
		}

		var o=_DoXMLAct("sendmsg","&tozname="+encodeURIComponent(f.tozname.value)
			+"&subject="+encodeURIComponent(f.subject.value)
			+"&fuzhu="+encodeURIComponent(f.fuzhu.value))
		if (_XMLERROR(o)) return
		alert("发送成功！")
		d.Close()

	}
	d.Show()
	
	
}



/******联盟关系******/
function LianMengGXData(){
	var o=new DataBase()
  o.initData=function(){
	var d=this.dialog
	var all=this.dialog.c.all

	var s="<div class=text>"+_H("联盟关系","note")+"详细说明</div>"+_GetHYJ("hyj",new Array("敌对","友盟"))

	var t=all.hyj?all.hyj.seton:0
	d.setHTML(s)
	
	_initHYJ(all.hyj)
	if (t) all.hyj.setHYJOn(t)

	var myqx=_ZhuGong.unionqx&4
	var btn=myqx?"":" disabled"
	var ujgxAry={}
	var a=this.oXml.selectNodes("//ujgx/row")
	for(var i=0;i<a.length;i++){
				var t=_XML2Obj(a[i])
				ujgxAry[t.u2]=t.gx
	}

  var a=this.oXml.selectNodes("//lianmenggx/row")
  s="<table class='listtab LianMengGXtab'><TR><th>名称</td><th>成员</td><th>对方给我盟关系</th><th>给对方的关系</th></tr>"
	var sa=new Array(s,s)
  for (var i=0;i<a.length;i++){
		var t=_XML2Obj(a[i])
		var j=(t.gx&34)?0:1
		sa[j]+="<tr><td>"+GetLianMengLink({uname:t.uname,unionid:t.unionid2})+"</td><td>"+t.chengyuann
			+"</td><td>"+this.getgxname(t.gx>>4)
			+"</td><td>"+this.getgxname(t.gx)+"</td><td>"
		if (ujgxAry[t.unionid2]){
				sa[j]+="<span class=green>据点结盟</span>"
		}else{
			if (t.gx&3){
				sa[j]+="<input"+btn+" type=button class=btn1 onclick='_LianMengGXAry.addgx("+t.unionid2+",0)' value=删除>"
			}
		
			if (j==0){
				sa[j]+=" <input"+btn+"  type=button class=btn1 onclick='_LianMengGXAry.addgx("+t.unionid2+",2)' value='宣战'>"
			}else{
				sa[j]+=" <input"+btn+"  type=button class=btn1 onclick='_LianMengGXAry.addgx("+t.unionid2+",1)' value='加对方友盟'>"
			}
		}
		
		sa[j]+="</td></tr>"
  }
	s+="</table>"

	all.hyj.setHTML(0,sa[0])
	all.hyj.setHTML(1,sa[1])
	
}
	o.addgx=function(unionid,gx){
		if (unionid==_ZhuGong.unionid){
			alert("无法和自己联盟建立关系!")
			return
		}
			var oo=_DoXMLAct("lianmeng","&subact=setgx&unionid="+unionid+"&gx="+gx)
			if (_XMLERROR(oo)) return false
			this.oXml=oo
			this.initData()
	}
	
	o.getgxname=function(gx){
			var s=""
				if (gx&2) s+="<span class=red>敌对</span>"
				if (gx&1) s+="<span class=green>友盟</span>"
			return s
	}

  o.getData=function(){
		this.prepareData("Act.aspx?act=GetLianMengGx")
  }
	
	return o	
}




function DoDisLianMengGX(url){
	if(!self._LianMengGXAry)_LianMengGXAry=new LianMengGXData()
	
	var d=_LianMengGXAry.dialog=new Dialog(_LianMengGXAry)
	d.setTitle("联盟关系")
	d.Show()
	
	_LianMengGXAry.getData(url)
}

function SetLianMengGx(unionid,gx){
		var oo=_DoXMLAct("lianmeng","&subact=setgx&unionid="+unionid+"&gx="+gx)
		if (_XMLERROR(oo)) return
		alert("操作成功!")
}



/***挂单****/
function GuaDanData(){
	var o=new DataBase()
	o.geturl=function(){
		var all=this.dialog.c.all
		var url=all.fromcxy.options[all.fromcxy.selectedIndex].getAttribute("url")
		if (all.ztype.value) url+="&ztype="+all.ztype.value
		if (all.min.value) url+="&min="+all.min.value
		if (all.max.value) url+="&max="+all.max.value
		if (all.o.value) url+="&o="+all.o.value
		if (all.bz.value) url+="&bz="+all.bz.value
		if (all.myu.checked) url+="&myu=1"
		return url
	}
	o.chaxun=function(url){
		url=url?url:this.geturl()
		this.getData(url)
		this.url=url
	}
	o.initData=function (){

		var d=this.dialog
		var curcity=this.curcity=_XML2Obj(this.oXml.selectSingleNode("//city"))
		if (curcity.jin<0) curcity.jin=0
		var maxjin=_ZY(curcity.jin)
		
		var s="<div class=text><table width=100%><tr><td>当前城市金：<span class=note>"+_disZY(curcity.jin)
		+_SGG.getAllText("</span>　[物资交易]规则详细说明")+"</td><td align=right><a href=javascript:DoDisCityList("+curcity.cx+","
		+curcity.cy+")>物资运输／售求</a> <a href=javascript:javascript:DoDisShangDui()>商队动态</a></td></tr></table></div>"
			+"<table class=listtab><tr><th></th><th>物资</th><th>单价"+_SGG.XG+"总价</th><th>主公</th><th>联盟</th><th>运输时间</th><th>状态</th></tr>"
		var a=this.oXml.selectNodes("//guadan/row")
		for(var j=0;j<a.length;j++){
			var c=_XML2Obj(a[j])
			var oo=_SGG.getWZobj(c.ztype)
			var n=oo.n(c.n)
			var t=c.danjia*n/1000
		
			s+="<tr><td>"

			if (c.bz&2){
				if(c.yb) s+="<span class=bugou>"+c.yb+"元宝</span> "
				if(c.lijin) s+="<span class=note>"+c.lijin+"礼金</span> "
				s+="<span class=blue>求购</span>"
			}else
				s+="<span class=green>出售</span>"
				
			s+="</td><td>"+oo.name+n+"</td><td>"+(c.danjia/1000)+_SGG.XG
			if (c.bz&2==0 && (t>maxjin))
				s+="<font color=red>"+t+"</font>"
			else s+=t
			
			var btnstr=""
			if(!(c.bz&2)){
				if(c.yb) {
					s+=" <span class=bugou>"+c.yb+"元宝</span>"
					btnstr+=c.yb+"元宝"
				}
				if(c.lijin) {
					s+=" <span class=note>"+c.lijin+"礼金</span>"
					btnstr+=c.lijin+"礼金"
				}
				if (btnstr) btnstr=" cstr='"+btnstr+"'"
			}
			
			
			s+="</td><td>"
			
			s+=GetZhuGongLink(c)+"　"+c.cname+"("+c.cx+","+c.cy+")</td><td>"
			if (c.zunionid==_ZhuGong.unionid && c.zunionid) s+="<span class=green>"+c.uname+"</span>"
			else s+=c.uname
			
			var tt=(c.shijian_max>0)&&(c.yundaotime>c.shijian_max*3600)
			s+="</td><td>"+(tt?"<span class=red>":"")+GetTimeStr(c.yundaotime)
			
			if (tt){
				s+="</span>"
				var m=c.shijian_max*3600
				var t=c.yundaotime
				for(var i=1;;i++){
					t/=4
					if (t<m) break
				}
				s+=_SGG.XG+GetTimeStr(t)+"</td><td>"+_BaoWuAry.getBtn(1226,"sid="+c.id+" n="+i+btnstr,i)
				
			}else if (c.bz&2==0 &&(t>maxjin)) s+="</td><td>金不足"
			else {
				s+="</td><td><input"+btnstr+" type=button class=btn1 value='"+(c.bz&2?"出售":"购买")+"' onclick='_GuaDan.goumai(this,"+c.id+")'>"
			}
			
			s+="</td></tr>"

		}
		s+="</table>"

		var a=_XML2Obj(this.oXml.selectSingleNode("//guadan"))
		if (a.total>a.count){
			//需要分页
			if (!this.pageno) this.pageno=0
			var p=Math.ceil(a.total/a.count)
			for(var i=0;i<p;i++){
				if (this.pageno!=i)
					s+="　<a href=javascript:_GuaDan.gopage("+i+")>"+(i+1)+"</a>"
				else s+="　"+(i+1)
			}
			s+="<BR><BR>"
		}

		this.dialog.c.all.list.innerHTML=s
		
		_BaoWuAry.setBtnOnclick(this.dialog.c.all,1226,function(){
			var e=event.srcElement
			o.goumai(e,e.getAttribute("sid"),e.getAttribute("isyb"),e.getAttribute("n"))
		})
		
		
	}
	o.gopage=function(pageno){
		this.pageno=pageno
		this.getData(this.url+"&pageno="+pageno)
	}
	o.goumai=function(e,id,isyb,n){
	if (e.cstr && !confirm("需要花费"+e.cstr+" 确认吗？")) return
	var url=this.geturl()+"&id="+id
		if (isyb!=null) url+="&isyb="+isyb+"&n="+n
			var oo=_DoXMLAct("goumai",url)
			if (_XMLERROR(oo)) return false
			o.change=true
			o.resetXML(oo)
	}
	
  o.getData=function(url){
  	if (!url) url="&cx="+_ZhuGong.zx+"&cy="+_ZhuGong.zy
		this.prepareData("Act.aspx?act=GetGuaDan"+url)
  }
	
	return o
}

function DoDisGuaDan(cx,cy){
	if (!self._GuanDan)_GuaDan=new GuaDanData()

	var d=_GuaDan.dialog=new Dialog(_GuaDan)
	d.setTitle("市场挂单")
	d.setHTML("<table class=listtab><tr><td class=titleTD>购买城市</td><td colspan=6><select onchange='_GuaDan.chaxun()' id=fromcxy>"
			+_ZhuGong.getCityOption(cx+","+cy)
			+"</select></td></tr><tr><td><select id=bz><option>全部<option value=1>出售<option value=2>求购</select></td><td class=titleTD>资源</td><td><select id=ztype><option value=''>全部"
			+_SGG.getWZOption()+"</select></td>"
			+"<td class=titleTD>排序</td><td><select id=o><option value=>运输时间<option value=danjia>单价</select></td>"
			+"<td class=titleTD>数量</td><td><input style='width:50px' id=min class=input>——<input style='width:50px' id=max class=input></td>"
			+"<td><input type=checkbox id=myu>本盟</td><td><input type=button class=btn value='查询' onclick='_GuaDan.chaxun()'></tr></table>"
			+"<div id=list></div>")
	d.Show()
	
	_GuaDan.chaxun("&cx="+cx+"&cy="+cy)
}



/********ShangDui*********/
function ShangDuiData(){
	var o=new DataBase()
	o.initData=function (){

		var d=this.dialog

		var s="当前出售物资："
		var a=this.oXml.selectNodes("//chushou/row")
		if (a.length>0){
			s+="<BR><table class=listtab><tr><th>城市</th><th></th><th>物资</th><th>单价"+_SGG.XG+"总价</th><th>元宝/礼金</th><th>商队</th></tr>"
			for(var j=0;j<a.length;j++){
				var c=_XML2Obj(a[j])
				
				s+="<tr><td>"+c.cname+"("+c.cx+","+c.cy+")</td><td>"+(c.bz&2?"求购":"出售")+"</td><td>"

				var oo=_SGG.getWZobj(c.ztype)
				var n=oo.n(c.n)
				var t=c.danjia*n/1000
		
				s+=oo.name+n+"</td><td>"+(c.danjia/1000)+_SGG.XG+t+"</td><td>"+c.yb+_SGG.XG+c.lijin+"</td><td>"+c.shangduin
				+"</td><td><input class=btn1 type=button onclick='_ShangDui.quxiao("+c.id+")' value='取消'></td></tr>"
			}
			s+="</table>"
		}else s+="无"


		s+="<BR><table class=listtab><tr><th>出发地</th><th>目的地</th><th>状态</th><th>剩余时间</th><th>到达</th><th>商队</th><th></th></tr>"
		a=this.oXml.selectNodes("//shangdui/row")
		for(var j=0;j<a.length;j++){
			var c=_XML2Obj(a[j])
			
			s+="<tr><td>"
			if (c.zuid==_ZhuGong.zuid)
				s+=_ZhuGong.getCityLink(c.cx,c.cy)
			else
				s+=GetZhuGongLink(c)+"　"+c.cname+"("+c.cx+","+c.cy+")"
				
			s+="</td><td>"
			if (c.tzuid==_ZhuGong.zuid)
				s+=_ZhuGong.getCityLink(c.dx,c.dy)
			else
				s+=GetZhuGongLink({zuid:c.tzuid,zname:c.tzname})+"　"+c.tcname+"("+c.dx+","+c.dy+")"
			
			s+="</td><td style='text-align:left'>"
			if(c.lianxun) s+="<span class=green>剩余"+c.lianxun+"次</span>"
			if ((c.bz&3)==0){
				if (c.zt==0){
					s+=_getZYListHTML(c)
					var t=_BingZhuangAry.getBQListHTML(c)
					if (t) s+="<BR>"+t
				}else
					s+="返回"
			}else if ((c.bz&3)==1){
				if (c.zt==0){
					s+=_getZYListNoJinHTML(c)
					var t=_BingZhuangAry.getBQListHTML(c)
					if (t) s+="<BR>"+t
				}else{
					s+="返回，金："+_ZY(c.jin)
				}
			}else if ((c.bz&3)==3){
					s+="反向运输："+_getZYListHTML(c)
					var t=_BingZhuangAry.getBQListHTML(c)
					if (t) s+="<BR>"+t
			}else{
				if (c.zt!=0){
					s+="返回，"+_getZYListNoJinHTML(c)
					var t=_BingZhuangAry.getBQListHTML(c)
					if (t) s+="<BR>"+t
				}else{
					s+="金："+_ZY(c.jin)
				}
			}
			
			s+="</td><td><span endfunc=_ShangDui.getData() id=TIME>"+this.getSYTimeStr(c.endrq)
				+"</span></td><td>"+_SGG.getXMLRQStr(c.endrq)+"</td><td>"+c.shangduin
			
			s+="</td><td><input class=btn1 type=button value='加速' onclick=_ShangDui.jiasu("+c.zuid+","+c.id+")></td></tr>"
			
		}
		s+="</table>"


		this.dialog.setHTML(s)
		
		
	}
	o.quxiao=function(id){
			var oo=_DoXMLAct("jiaoyiquxiao","&id="+id)
			if (_XMLERROR(oo)) return false
			o.change=true
			o.resetXML(oo)
	}
	
	o.jiasu=function(zuid,id){
		var d=new Dialog()
		d.setTitle("加速商队")
		
		var b=_BaoWuAry.getobj(1226)
		var s="<div class=text>"+b.fuzhu+"<BR>使用个数：<input style='width:50px' class=input id=n value=1> "+_BaoWuAry.getBtn(1226)+"</div>"
		d.setHTML(s)
		_BaoWuAry.setBtnOnclick(d.c.all,1226,function(){
			var oo=_DoXMLAct("jiaoyijiasu","&tzuid="+zuid+"&id="+id+"&isyb="+event.srcElement.getAttribute("isyb")+"&n="+d.c.all.n.value)
			if (_XMLERROR(oo)) return false
			o.resetXML(oo)
			d.Close()
		})
		d.Show()
		
	}
	
	
  o.getData=function(){
		this.prepareData("Act.aspx?act=GetShangDui")
  }
	
	return o
}



function DoDisShangDui(){
	if(!self._ShangDui)_ShangDui=new ShangDuiData()

	var d=_ShangDui.dialog=new Dialog(_ShangDui)
	d.setTitle("商队列表")
	d.Show()
	_ShangDui.getData()
}

/********CityList*********/
function CityListData(){
	var o=new DataBase()
	o.initData=function (){

		this.cityA={}

		var d=this.dialog
		var s="<BR><table class=listtab><tr><td class=titleTD>城市</th><td class=titleTD>建造</td><td class=titleTD>科技</td><td class=titleTD>商队</th><td class='titleTD z4'>金</td><td class='titleTD z0'>粮</td><td class='titleTD z1'>木</th><td class='titleTD z2'>砖</td><td class='titleTD z3'>铁</th><td class=titleTD>兵装</th></tr>"
		var a=this.oXml.selectNodes("//city/row")
		for(var j=0;j<a.length;j++){
			var c=new CityObj(a[j])
			this.cityA[c.cx+","+c.cy]=c
			
			s+="<tr><td>"+_ZhuGong.getCityLink(c.cx,c.cy,"_CityList.dialog")
			if (c.isweiren()) s+="<BR><span class=green>委任中</span>"
			
			s+="</td><td>"+_RedColor(1,c.jianzaon)+_SGG.XG+c.getJianZaoMaxN()+"</td><td>"+(c.bz&2?"1":"")
			+"</td><td>"+c.shangduin+_SGG.XG+_ZYK(c.shangduiyunliang)+"</td>"
			
			for (var i=-1;i<4;i++){
				if (i==-1)i=4
				var r=c.zyRL(i)
				var n=c.zy(i)
				s+="<td>"+_SGG.mancang(n,r)
				if ((i==0)||(i==4)) s+="<BR>"+_RedColor(i,_ZY(c.zyChan(i)))+_SGG.XG+"小时"
				s+="</td>"
				if (i==4)i=-1
			}
			
			s+="<td>"+(c.freebn?"士兵："+_Ren(c.freebn)+"<BR>":"")+_BingZhuangAry.getBQListHTML(c,"<BR>")+"</td>"	
			
			s+="</tr>"
			
		}
			
		s+="</table>"
		var all=d.c.all
		
		all.citylist.innerHTML=s
	
		d.c.all.btnyunshu.onclick=function(){
			
			if (all.fromcxy.value==all.tocxy.value){
				alert("运入运出城市相同！")
				all.fromcxy.focus()
				return
			}
			if (o.shengyu<0){
				alert("超过商队运量！")
				return
			}
			var lianxun=parseInt(all.lianxun.value)
			if(lianxun<0||lianxun>8){
				alert("连续运输只能是1-8次")
				return
			}
			if (lianxun>1){
				if (!confirm("连续运输"+lianxun+"次，需要"+(lianxun-1)*2+"元宝，确认吗？")) return
			}
			
			var url=""
			var es=all.f.elements
			for (var i=0;i<es.length;i++){
				url+="&"+es[i].id+"="+es[i].value
			}
			var t=all.fromcxy.options[all.fromcxy.selectedIndex]
			url+="&cx="+t.getAttribute("cx")+"&cy="+t.getAttribute("cy")
			t=all.tocxy.options[all.tocxy.selectedIndex]
			url+="&dx="	+t.getAttribute("cx")+"&dy="+t.getAttribute("cy")
			
			if (all.sd.selectedIndex) url+="&sd=1"
			url+="&lianxun="+lianxun
			
	
			var oo=_DoXMLAct("YunShu",url)
			if (_XMLERROR(oo)) return false
			o.change=true
			o.resetXML(oo)
			alert("商队已经出发！")
		}
		
		var f=function(){
				var c=o.curcity=o.getcity()
				var es=all.f.elements
				
				for (var i=0;i<es.length;i++){
					var e=es[i]
					var n=o.getvalue(e.id)
					var m=o.getcityN(e.id)
					if (n>m) n=m
					if (n==0)
							e.value=""
					else if (n!=e.value){
						if ((n==0)&&(e.value)) e.value=""
						else e.value=n
					}
					_GetAllByID(all,e.id)[0].innerHTML="<span title='增加一个商队的量' style='cursor:hand'>"+(m-n)+"</span>　<a href=# title='最大' class=uparrow>↑</a>　<a href=# title='最小' class=downarrow>↓</a>"
				}
				
				if (all.sd.value=="1")
					c=o.gettargetcity()
				o.disyunliang(c)
		}
		all.sd.onchange=all.fromcxy.onchange=f
		
		all.tocxy.onchange=function(){
				if (all.sd.value!="1") return
				o.disyunliang(o.gettargetcity())
		}

		var clickf=function(){
			var e=event.srcElement
			if (e.id) return
			var n
			var id=e.parentElement.id
			if (e.title=="最大"){
				n=o.getcityN(id)-o.getvalue(id)
			}else if (e.title=="最小"){
				n=-o.getvalue(id)
			}else{
				var c=all.sd.value=="1"?o.gettargetcity():o.getcity()
				n=_SGG.cpWZN(id,_ZY(c.shangduiyunliang))
			}
			var maxn=_SGG.cpWZN(id,o.shengyu)
			if (n>maxn) n=maxn
			all.f[id].value=n+o.getvalue(id)
			f()
			return false
		}

		var es=all.f.elements
		for (var i=0;i<es.length;i++){
			var e=es[i]
			e.onchange=e.onkeyup=f
			var t=_GetAllByID(all,e.id)[0]
			t.onclick=clickf
		}

		f()

	}
	o.disyunliang=function(c){
		var all=this.dialog.c.all
				all.yunliang.value=_ZY(c.shangduin*c.shangduiyunliang)
				all.shengyu.value=this.shengyu=_ZY(c.shangduin*c.shangduiyunliang)-this.cp_rl()
				all.shangduin.value=Math.floor(this.shengyu/_ZY(c.shangduiyunliang))
				all.shengyu.className=this.shengyu<0?"red":"input"
	}
	
	
	//得到前台值
	o.getcityN=function(id){
		return _StartWith(id,"bq_")?_Ren(this.curcity[id]):_ZY(this.curcity[id])
	}

	o.cp_rl=function(){
		return this.getvalue("ls")+this.getvalue("mu")+this.getvalue("shi")+this.getvalue("tie")+this.getvalue("jin")
		+(this.getvalue("bq_qiang")+this.getvalue("bq_ji")+this.getvalue("bq_gong")+this.getvalue("bq_ma"))
		+(this.getvalue("bq_chongche")+this.getvalue("bq_toushiche"))*10
	}
	
	o.getvalue=function(name){
		var i=this.dialog.c.all.f[name].value
		return i?parseInt(i):0
	}
	
	o.getcity=function(k){
		k=k?k:this.dialog.c.all.fromcxy.value
		return this.cityA[k]
	}
	
	o.gettargetcity=function(k){
		k=k?k:this.dialog.c.all.tocxy.value
		return this.cityA[k]
	}


  o.getData=function(otherCanShu){
		if (!otherCanShu) otherCanShu=""
		this.prepareData("Act.aspx?act=GetCityList"+otherCanShu)
  }
	
	o.close=function(){
		if (this.change)
			Form.refresh()
	}

	o.ybstr="<option value=0>0<option value=10>10<option value=20>20<option value=30>30<option value=50>50<option value=100>100<option value=200>200<option value=300>300<option value=500>500"
	o.qiugou=function(ztype){
		var d=new Dialog(null,true)
		var obj=_SGG.getWZobj(ztype)
		var id=obj.id
		d.setTitle("求购物资")
		var c=o.getcity()
		var maxyunliang=_ZY(c.shangduin*c.shangduiyunliang)
		
		d.setHTML("<form><table class=listtab><tr><td class='titleTD z"+ztype+"'>求购 "+obj.name
		+"</td><td><input class=input id=n value=2000></td><td>"+_SGG.getAllText("[物资交易]规则详细说明")+"</td></tR>"
		
		+"<tr><td class=titleTD>金单价</td><TD><select id=danjia>"	+this.danjiaoption(id)+"</select></td></tR>"
		+"<tr><td class=titleTD>金总价</td><TD id=zongjia></td></tR>"
		+"<tr><td class=titleTD>当前金</td><TD>"+this.getcityN("jin")+"</td></tR>"
		+"<tr><td class=titleTD>额外付出</td><TD><select id=yb1>"+this.ybstr+"</select>元宝<BR><select id=lijin1>"+this.ybstr+"</select>礼金</td><td style='text-align:left'>"
		+_SGG.getChongZhiHTML()+"<BR>额外付出元宝礼金时，商队免费使用［急送符］，<BR>注意元宝礼金，交易完成时才实际扣，需要<span class=bugou>保证礼金元宝余额足够</span>，<BR>否则将被扣10礼金，10000金</td></tR>"
		
		
		
		
		+"<tr><td class=titleTD>当前最大运量</td><TD>"+maxyunliang+" "+_ZhuGong.getAddHTML(482)+"</td></tR>"
		+"<tr><td class=titleTD>需要运量</td><TD id=yunliang></td><td>挂单时，20金需要1运量</td></tR>"
		
		+"<tr><td class=titleTD>当前"+obj.name+"</td><TD>"+this.getcityN(obj.id)+"</td></tR>"
		+"<tr><td class=titleTD>最大运输时间</td><td><input style='width:50px' class=input id=shijian_max>小时</td></tR>"
		+"<tr><td class=titleTD>只允许同盟</td><td><input type=checkbox class=checkbox id=onlyunion></td></tr>"
		+"</table><input id=btn type=button class=btn value='求购'>"
		+"</form>")
		
		var all=d.c.all
		all.n.onkeyup=all.danjia.onchange=function(){
			var jin=all.danjia.value*all.n.value/1000
			all.zongjia.innerText=jin
			var y=Math.max(_SGG.cp_rl(ztype,all.n.value),_SGG.cp_rl(4,jin)/20)
			all.yunliang.innerText=y
			all.yunliang.className=y>maxyunliang?"bugou":""
			
		}
		all.btn.onclick=function(){
			var n=parseInt(all.n.value)
			if (isNaN(n)||n<=0){
				alert("必须输入求购数量！")
				return
			}
			var t=o.dialog.c.all.fromcxy.options[o.dialog.c.all.fromcxy.selectedIndex]
			var url="&ztype="+ztype+"&n="+n+"&cx="+t.getAttribute("cx")+"&cy="+t.getAttribute("cy")+"&danjia="+all.danjia.value
			+"&shijian_max="+all.shijian_max.value+"&bz="
			url+=all.onlyunion.checked?"3":"2"
	
			var oo=_DoXMLAct("chushou",url+"&yb="+all.yb1.value+"&lijin="+all.lijin1.value)
			if (_XMLERROR(oo)) return false
			o.change=true
			o.resetXML(oo)
			alert("挂单成功！\r\n可以在［商队动态］中取消该交易")
			d.Close()
			
		}
		all.danjia.onchange()
	
		d.Show()
		
		
	}

	
	o.chushou=function(ztype){
		var d=new Dialog(null,true)
		var obj=_SGG.getWZobj(ztype)
		var id=obj.id
		var n=this.getvalue(id)
		if (n<=0){
			alert('请先输入需要出售的数量！')
			this.dialog.c.all.f[id].focus()
			return
		}
		var c=o.getcity()
		var maxyunliang=_ZY(c.shangduin*c.shangduiyunliang)
		d.setTitle("出售物资")
		d.setHTML("<form><table class=listtab><tr><td class='titleTD z"+ztype+"'>"+obj.name
		+"</td><td><input type=hidden id=n value="+n+">"+n+"</td><td>"+_SGG.getAllText("[物资交易]规则详细说明")+"</td></tR>"
		+"<tr><td class=titleTD>金单价</td><TD><select id=danjia>"	+this.danjiaoption(id)+"</select></td></tR>"
		+"<tr><td class=titleTD>金总价</td><TD id=zongjia></td></tR>"
		+"<tr><td class=titleTD>额外要求</td><TD><select id=yb1>"+this.ybstr+"</select>元宝<BR><select id=lijin1>"+this.ybstr
		+"</select>礼金</td><td style='text-align:left'>买方支付的元宝收取20%交易税，礼金收取50%交易税<BR><span class=bugou>警告！与"+_H("小号")+"交易直接封号！</span></td></tR>"
		
		
		+"<tr><td class=titleTD>当前最大运量</td><TD>"+maxyunliang+"　"+_ZhuGong.getAddHTML(482)+"</td></tR>"
		+"<tr><td class=titleTD>需要运量</td><TD id=yunliang></td><td>挂单时，20金需要1运量</td></tR>"
		
		+"<tr><td class=titleTD>最大运输时间</td><td><input style='width:50px' class=input id=shijian_max>小时</td></tR>"
		+"<tr><td class=titleTD>只允许同盟购买</td><td><input type=checkbox class=checkbox id=onlyunion></td></tr>"
		+"</table><input id=btn type=button class=btn value='出售'>"
		+"</form>")
		
		var all=d.c.all
		all.n.onkeyup=all.danjia.onchange=function(){
			var jin=all.danjia.value*all.n.value/1000
			all.zongjia.innerText=jin
			var y=Math.max(_SGG.cp_rl(ztype,all.n.value),_SGG.cp_rl(4,jin)/20)
			all.yunliang.innerText=y
			all.yunliang.className=y>maxyunliang?"bugou":""
		}
		all.btn.onclick=function(){
			var t=o.dialog.c.all.fromcxy.options[o.dialog.c.all.fromcxy.selectedIndex]
			var url="&ztype="+ztype+"&n="+all.n.value+"&cx="+t.getAttribute("cx")+"&cy="+t.getAttribute("cy")+"&danjia="+all.danjia.value
			+"&shijian_max="+all.shijian_max.value+"&yb="+all.yb1.value+"&lijin="+all.lijin1.value
			if (all.onlyunion.checked) url+="&bz=1"
	
			var oo=_DoXMLAct("chushou",url)
			if (_XMLERROR(oo)) return false
			o.change=true
			o.resetXML(oo)
			alert("挂单成功！\r\n可以在［商队动态］中取消该交易")
			d.Close()
			
		}
		all.danjia.onchange()
		
		
		
		d.Show()
		
		
	}
	o.danjiaoption=function(id){
		var n=this.danjiaAry[id]
		var a=[30,50,75,100,125,150,200,300,500]
		var s=""
		for(var i=0;i<a.length;i++){
			var t=Math.round(n*a[i]*10)
			s+="<option "+(a[i]==100?"selected ":"")+"value="+t+">"+(t/1000)
		}
		return s
	}
	o.danjiaAry={ls:0.1,mu:0.15,shi:0.2,tie:0.3
		,bq_qiang:40,bq_ji:50,bq_gong:60,bq_ma:400,bq_chongche:2500,bq_toushiche:4800}
	
	
	o.guadan=function(){
			var t=this.dialog.c.all.fromcxy.options[this.dialog.c.all.fromcxy.selectedIndex]
		DoDisGuaDan(t.cx,t.cy)
	}
	return o
}



function DoDisCityList(fromcx,fromcy,tocx,tocy){
	if(!self._CityList)_CityList=new CityListData()
	if (tocx==null){
		tocx=_ZhuGong.zx
		tocy=_ZhuGong.zy
	}
	if (fromcx==null){
		fromcx=_ZhuGong.zx
		fromcy=_ZhuGong.zy
	}
	if (fromcx==tocx && fromcy==tocy && _ZhuGong.cityn>1){
		tocx=_ZhuGong.cityAry[1].cx
		tocy=_ZhuGong.cityAry[1].cy
	}
	
	_CityList.tocx=tocx
	_CityList.tocy=tocy
	_CityList.fromcx=fromcx
	_CityList.fromcy=fromcy

	var d=_CityList.dialog=new Dialog(_CityList)
	d.setfullscreen()
	d.setTitle("城池列表")


	var s="<div class=text>各种资源每单位占用１运输量；"
			+getNoteText("枪，戟，弓，马占用１运输量；冲车，投石车占用１０运输量。")
			+"　　<a href=javascript:DoDisShangDui()>商队动态</a>"
			+"　<a href=javascript:_CityList.guadan()>市场挂单</a></div>"
			+"<table class=listtab><tr><td style='vertical-align:top;'>"
			+"<form style='margin-top:0px' id=f><table class=listtab>"

	var a=CityObj.prototype.zyAry
	for(var i=0;i<4;i++){
				s+="<tr><td class='titleTD z"+i+"'>"+a[i].name+"</td><td id="+a[i].id
				+"></td><td><input style='width:50px' class=input id="+a[i].id+"> <a href=javascript:_CityList.chushou("
				+i+")>出售</a> <a href=javascript:_CityList.qiugou("
				+i+")>求购</a></td></tr>"}

	s+="</table></td><td><table class=listtab>"
	+"<tr><td class='titleTD z4'>金</td><td id=jin></td><td style='text-align:left'><input class=input id=jin style='width:50px'></td></tr></table>"
	+"<BR><table class=listtab>"

for(var i in {1020:1,1021:1,1001:1,1002:1,1003:1,1010:1}){
	var obj=_SGG.getWZobj(i)
				s+="<tr><td class='titleTD'>"+obj.name+"</td><td id="+obj.id
				+"></td><td><input style='width:50px' class=input id="+obj.id+"> <a href=javascript:_CityList.chushou("
				+i+")>出售</a> <a href=javascript:_CityList.qiugou("
				+i+")>求购</a></td></tr>"
	
	if (i==1021)
		s+="</table></td><td><table class=listtab>"
}			
	s+="</table></form></td></tr>"
			+"<tr><td colspan=3><select id=sd><option>运出城商队<option value=1>对方提供商队</select>：<input readonly class=input style='width:30px' id=shangduin>　总运量：<input readonly class=input id=yunliang style='width:80px'> "
			+_ZhuGong.getAddHTML(482)
			+"　剩余运量：<input class=input id=shengyu readonly style='width:80px'>　<select id=fromcxy>"
			+_ZhuGong.getCityOption(fromcx+","+fromcy)
			+"</select>－＞<select id=tocxy>"+_ZhuGong.getCityOption(tocx+","+tocy)
			+"</select><input id=btnyunshu type=button class=btn value='运输'><div class=text>连续运输<input type=text style='width:50px' id=lianxun value=1>次 <span class=note>注意</span>：连续运输时，运输时间减半，资源一次扣减，每连续运输1次花费2元宝，最多连续8次</div></td></tr>"
			+"</table><div id=citylist></div>"
		
	d.setHTML(s)

	d.Show()
	_CityList.getData()
}


/********LingDi*********/
function LingDiData(){
	var o=new DataBase()
	o.initData=function (){

		var d=this.dialog

		var s="<form id=f><input class=btn1 onclick=_selAllCheckBox(this.form.uid) type=button value='全选'>"
			+" <input class=btn1 onclick=_selFanCheckBox(this.form.uid) type=button value='反选'>"
			+"　　　<input onclick='_LingDi.batshouhuo()' type=button class=btn value='批量收获'><BR>"
			+"<table class=listtab><tr><th>名称</th><th>类型</th><th>当前寻宝</th><th></th></tr>"
	  
	  for (var i=0;i<_ZhuGong.cityAry.length;i++){
  		var c=_ZhuGong.cityAry[i]
  		var a=this.oXml.selectNodes("//ld/row[@cx="+c.cx+" and @cy="+c.cy+"]")
  		var b=_XML2Obj(this.oXml.selectSingleNode("//city/row[@cx="+c.cx+" and @cy="+c.cy+"]"))
  		
  		s+="<tr><td colspan=5 class=title style='text-align:left'>"+c.fullname+"　　官府："
  			+b.guanfujibie+"级　当前领地/最大数：<span class=note>"+a.length+"</span>/"+b.guanfujibie+"</td></tr>"
	
			for(var j=0;j<a.length;j++){
				var ld=_XML2Obj(a[j])
				
				s+="<tr><td>"+GetMapLink(ld.mapx,ld.mapy,'_LingDi.dialog',ld.cname)+"</td><td>"
					+ld.jibie+"级 "+_YDAry.getname(ld.ldtype)+"</td><td>"

				if (ld.uid){
					 s+="<a href=# onclick='return DoDisWJMX("+ld.uid+")'>"+_Trim(ld.wjname)+"</a>("+(ld.zhili?ld.zhili:"")+")"
					 

					var t=SubRQSec(GetRQ(ld.startrq),_SGG.SRQ())-ld.shijian
					if (t>=0)
						s+="<input type=checkbox value="+ld.uid+" name=uid><span id=TIME add=1>"+GetTimeStr(t)+"</span>"
					 +"<input type=button class=btn1 onclick='this.previousSibling.innerText=0;_LingDi.shouhuo("+ld.uid+",0)' value=收获>"
					 +"<input type=button class=btn1 onclick='_LingDi.shouhuo("+ld.uid+",1)' value=收获并返回>"
					else	
						s+="行进<span id=TIME endfunc=_LingDi.initData()>"+this.getSYTimeStrByMS(-t*1000)+"</span>"
						+"<input type=button class=btn1 onclick='_LingDi.shouhuo("+ld.uid+",1)' value=返回>"

				}else{
					s+="<input class=btn1 type=button onclick=_LingDi.xunbao("+ld.mapx+","+ld.mapy+") value='寻宝'>"
				}

				s+="</td><td><input class=btn1 type=button onclick=NewCity(_LingDi.getlingdi("+ld.mapx+","+ld.mapy+")) value='拓建新城'>"
					+"<input onclick=FangQiLingDi(_LingDi.getlingdi("+ld.mapx+","+ld.mapy+"),_LingDi,'getData') class=btn1 type=button value='放弃'>"
					+"<input type=button class=btn1 onclick=\"_LingDi.gaiming("+ld.mapx+","+ld.mapy+",'"+ld.cname+"')\" value='改名'></td></tr>"
			}
		}
			s+="</table>"

			s+="</form>"

		d.setHTML(s)
		d.close=function(){
			if(o.ischange && Form.data==self._WJAry)
				Form.refresh()
		}
	}
	o.batshouhuo=function(){
		var uid=_SGG.getCheckedCheckBox(this.dialog.c.all.f.uid)
		if (!uid){
			alert("必须至少选择一个！")
			return
		}
		
		var oo=_DoXMLAct('XunBaoShouHuoBat',"&uid="+uid)
		if (_XMLERROR(oo)) return
		
		_ZhuGong.resetZhuGong(oo)
		
		var a=oo.selectNodes("//xunbao/r")
		var s=""
		for(var i=0;i<a.length;i++){
			s+=_Trim(a[i].getAttribute("wjname"))+"："
			var t=a[i].getAttribute("s")
			s+=t?_BaoWuAry.getlist(t):""
			s+="\r\n"
		}
		alert(s)
		
		var a=ToArray(this.dialog.c.all.f.uid)
		for(var i=a.length-1;i>=0;i--)
			if (a[i].checked) a[i].nextSibling.innerText="0:00"
	}


	o.shouhuo=function(uid,bz){
		_ZhuGong.shouhuo(uid,bz)
		if (bz) {
			o.getData()
			o.ischange=true
		}
	}
	
	o.gaiming=function(mapx,mapy,ldname){
		var d=new Dialog(null,true)
		d.setTitle("领地命名")
		d.setHTML("<table class=listtab><tr><td class=titleTD>坐标</td><td>"+mapx+","+mapy+"</td></tr>"
			+"<tr><td class=titleTD>改名</td><td><input maxlength=6 size=10 id=ldname value='"+ldname+"'></td></tr>"
			+"</table>"+_BaoWuAry.getBtn(1204)
		)
		
		_BaoWuAry.setBtnOnclick(d.c.all,1204,function(){
			var e=event.srcElement
			var newname=d.c.all.ldname.value;
			if (newname==""){
				alert("必须输入新名称!")
				return
			}
			var url="&newname="+encodeURIComponent(newname)+"&bz=2&isyb="+e.getAttribute("isyb")
				+"&cx="+mapx+"&cy="+mapy
			e=null
			
			var oo=_DoXMLAct("zhugonggaiming",url)
			if (_XMLERROR(oo)) return
			alert("修改成功!")
			_ZhuGong.resetZhuGong(oo)
			d.Close()
			o.getData()
		})
		d.Show()	
		
	}
	o.xunbao=function(mapx,mapy){
			new XunBao(this.getlingdi(mapx,mapy),this,"xunbaoR")
	}
	o.xunbaoR=function(){
		this.getData()
		this.ischange=true
	}
	
	o.getlingdi=function(mapx,mapy){
		var t=_XML2Obj(this.oXml.selectSingleNode("//ld/row[@mapx="+mapx+" and @mapy="+mapy+"]"))
		t.fullname=t.cname+" "+_YDAry.getname(t.ldtype)+"("+t.mapx+","+t.mapy+")"
		return t
	}
	
  o.getData=function(){
		this.prepareData("Act.aspx?act=GetLingDi")
  }
	
	return o
}



function DoDisLingDi(){
	if (!self._LingDi)_LingDi=new LingDiData()

	var d=_LingDi.dialog=new Dialog(_LingDi)
	d.setTitle("领地列表")
	d.Show()
	_LingDi.getData()
}





var _Chat={
ver:0,id:1

,setxml:function(x){
	var root=x.selectSingleNode("//chat")
	if (!root)return
	var newver=root.getAttribute("ver")
	if (this.ver!=newver){
		this.ver=newver
		this.id=1
	}

	for(var i=root.childNodes.length-1;i>=0;i--){
		var r=root.childNodes[i]
		var a=r.childNodes
		var rid=parseInt(r.getAttribute("uid"))
		if(rid==0) {
			var b=r.selectNodes("c[@zuid!='']")
			if (b.length){
				this.insertroom(1,b)
				this.insertroom(0,a,a.length==b.length)
			}else{
				//只有系统消息
				this.insertroom(0,a)
			}
		}
		else if (rid>0)this.insertroom(2,a)
		else this.insertroom(3,a)
	}
}

,insertroom:function(i,r,nored){
	var s=this.gethtml(r)
	if (!s) return
	var div=_Chat.hyj.getDIV(i)
	var end=(div.scrollHeight-div.scrollTop<210)
		
	
	this.hyj.appendHTML(i,s)
	if (this.hyj.seton!=i){
		if (!nored)
			this.hyj.getTD(i).style.color="red"
	}else{
		if (end)
			div.scrollTop=div.scrollHeight-200
	}
}
	
,gethtml:function(t){
	var s=""
	for(var i=0;i<t.length;i++){
		var o=_XML2Obj(t[i])
		if (o.id>this.id) this.id=o.id
		switch (t[i].nodeName){
			case "s":
				if (o.wid==2003)
					s+="<div class=sysmsg>消息:"+GetZhuGongLink(o)+"赞了一个：生日蛋糕，味道好极了！"
				else{
					var b=_BaoWuAry.getlistHTML(o.baowustr)
					s+="<div class=sysmsg>消息:"+GetZhuGongLink(o)+"开启"+_BaoWuAry.getname(o.wid)
						+" 获得:"+(b?b:o.baowustr)
				}
						break
			case "baotu":
				s+="<div class=sysmsg>消息:"+GetZhuGongLink(o)+"开启"+_H("藏宝图","green")+":"+_BaoWuAry.getbaotusubname(o.wid)
						+" 发现:"+_BaoWuAry.getlistHTML(o.baowustr)+" 藏宝地"
						break
			case "toukao":
				s+="<div class=sysmsg>消息:"+_SGG.getAllText(o.baowustr)+GetZhuGongLink(o)
						break
			case "keji":
				s+="<div class=sysmsg>消息:"+GetZhuGongLink(o)+"开始研究："+o.jibie+"级"+_KeJiAry.getname(o.ktype)
						break
			case "zhandou":
				s+="<div class=sysmsg>战报:"+GetZhuGongLink({zuid:o.g,zname:o.gname})
				+(o.zbz&1?"攻击":"掠夺")
				if (o.s!=0 && o.s!=null) s+=GetZhuGongLink({zuid:o.s,zname:o.sname})+"的"
				s+="<a href=javascript:GoMap("+o.mapx+","+o.mapy+")>"
				+(o.cname?o.cname+(o.zbz&2?"级城池":"级野地"):"("+o.mapx+","+o.mapy+")")+"</a>"
				if (o.zbz&1){
					if (o.e&1)
						s+=o.z==0?"成功占领":(o.z==-1?"成功占领，主公<span class=red>"+o.sname+"</span>被消灭":"胜利，未占领")
					else s+="失败"
				}else s+=o.e&1?"成功":"失败"
				
				break
			case "juqing":
				s+="<div class=sysmsg><span class=red>剧情任务</span>："
				if (o.g>0) s+=GetZhuGongLink({zuid:o.g,zname:o.gname})+o.cname+(o.e&1?"成功":"失败")
					else s+=GetZhuGongLink({zuid:o.s,zname:o.sname})+o.cname+(o.e&1?"失败":"成功")
				if(o.baowustr){
					var b=_BaoWuAry.getlistHTML(o.baowustr)
					s+=" 获得:"+(b?b:o.baowustr)
				}
				break
			case "jiaoyi":
				s+="<div class=sysmsg><span class=bugou>交易信息</span>有人以单价"+(o.danjia/1000)+"金"+(o.bz&2?(o.lijin?"<span class=orange>"+o.lijin+"礼金</span>":"")
					+(o.yb?"<span class=orange>"+o.yb+"元宝</span>":"")+"求购":"出售")
					+"<span class=z"+o.ztype+">"+_SGG.getWZobj(o.ztype).name+o.n+"</span> <a href=# onclick='DoDisGuaDan("+_ZhuGong.zx+","+_ZhuGong.zy+");return false'>进入市场</a>"
				break
			case "yanxi":
				s+="<div class=sysmsg>演习战报:"+GetZhuGongLink({zuid:o.g,zname:o.gname})
					+"挑战"+GetZhuGongLink({zuid:o.s,zname:o.sname})
					+(o.e&1?"成功":"失败")
				break
			case "gerenjudian":
				s+="<div class=sysmsg>"+o.cname+"据点战报:"+GetZhuGongLink({zuid:o.g,zname:o.gname})
					+"挑战"+GetZhuGongLink({zuid:o.s,zname:o.sname})
					+(o.e&1?"成功":"失败")
				break
			case "judian":
				s+="<div class=sysmsg>"+o.cname+"盟战战报:"+GetLianMengLink({unionid:o.g,uname:o.gname})
					+"挑战"+GetLianMengLink({unionid:o.s,uname:o.sname})
					+(o.e&1?"成功":"失败")
				break
			case "xuexi":
			 var c=t[i].childNodes
				for(var j=0;j<c.length;j++){
					o=_XML2Obj(c[j])
					s+="<div class=sysmsg>"+GetZhuGongLink(o)+"的将领"+o.wjname+"成功学习"
						+(c[j].nodeName=="t"?_SGG.TeJi(o.teji):o.teji)
				}
				break
			case "zd":
				s+="<div class=chatzhiding>置顶："
				switch(o.type){
					case "hun":
						s+=GetZhuGongLink(o)+"和"+GetZhuGongLink({zuid:o.zuid2,zname:o.zname2})
							+"的<a target=_blank href=w/hun/hunli.aspx?id="+o.hid+">婚礼将于"+o.rq+"举行</a>！"
							break
					case "hunupdate":
						var a=["朴素","标准","豪华","奢华"]
						s+=GetZhuGongLink(o)+"和"+GetZhuGongLink({zuid:o.zuid2,zname:o.zname2})
							+"的<a target=_blank href=w/hun/hunli.aspx?id="+o.hid+">婚礼规格提高到"+a[o.guige]+"婚礼！</a>"
							break
					case "hunend":
						s+=GetZhuGongLink(o)+"和"+GetZhuGongLink({zuid:o.zuid2,zname:o.zname2})
							+"已经完婚了！<a target=_blank href=w/hun/hunli.aspx?id="+o.hid+">查看婚礼盛况</a>"
							break
					case "sys":
						s+=_SGG.getAllText(o.s)
						break
					default:
						s+=GetZhuGongLink(o)+"："+o.s
				}
				break
			default:
			 if (o.zuid)
					s+="<div class=usrmsg>"+GetZhuGongLink(o)+":"+o.s.toString().replace(/>/g,"&gt;").replace(/</g,"&lt;")
				else{
					//系统消息
					s+="<div class=sysmsg>"+(t[i].nodeName=="c"?"消息":"昭告天下")+":"
					+o.s.toString().replace(/\[Z(-?\d+)_([^\]]+)\]/g,"<a href=# onclick='return DoDisZhuGongInfo($1)'>$2</a>").replace
					(/\[C(\d+)_(\d+)_([^\]]*)\]/g,"<a href=javascript:GoMap($1,$2)>$3($1,$2)</a>").replace(/\[U(\d+)_([^\]]+)\]/g
					,"<a href=# onclick='DisLianMeng($1);return false'>$2</a>").replace(/\[M(\d*),(\d*)_([^\]]+)\]/g,this.disweizhi).replace(/\[B([^\]]+)\]/g,function(t,t1){
						return _BaoWuAry.getlistHTML(t1)
					}).replace(/\[Y(\d+)_([^\]]+)\]/g,"<a href=# class=blue onclick='return DisOtherZBInfo($1)'>$2</a>").replace(/\[R(\d+)\]/g,"<a target=_blank href=/zhanbao.html?t=3&id=$1>第$1号战报</a>")

				}
		}
		s+="</div>"
	}
	return s
}
,disweizhi:function(d,a,b,c){
	var s=_ZhengQu.getSuoShu(c)
	//if (a) return "("+a+","+b+")"+s
	return s
}


,init:function(){
    var html = _GetHYJ("chat", ["世界", "玩家", "联盟", "师"], null)//,"")//,"10px")
	ChatDIV.innerHTML=html+"<form name=f id=f><input class=input id=msg style='width:150px'><input id=send type=submit value='发'><a href=javascript:_Chat.ding()>顶</a></form>"
	
_GetAllInDiv(ChatDIV,"f").onsubmit=function(){
		_SGG.setA()
		if (!this.msg.value) return false
		var i=_Chat.hyj.seton
		if (i<2){
			if (_ZhuGong.getBaoWu(1207)==0){
				alert("在世界频道发言需要传声符！")
				return false
			}
		}else if(i==2){
			if (_ZhuGong.unionid<=0){
				alert("还没有加入联盟")
				return false
			}
		}else if (i==3){
			if (_ZhuGong.shifuid==null){
				alert("还没有拜师或者自创师门")
				return false
			}
		}
		
		var oo=_DoXMLAct('chat',_Chat.geturl()+"&croom="+(i==2?"u":i==3?"s":"")+"&s="+encodeURIComponent(this.msg.value))
		if (_XMLERROR(oo)) return false
		this.msg.value=""
		_ZhuGong.resetXML(oo)
		
		return false

	}
	var hyj=this.hyj=_GetAllInDiv(ChatDIV,"chat")

	_initHYJ(hyj,function(i){
		if(i==2 && _ZhuGong.unionid<=0){
			hyj.setHTML(i,"<div class=bugou>您还未加入联盟！</div>在菜单<a href=javascript:DoDisLianMeng()>联盟</a>中加入或者创建联盟后，此频道才有效")
		}else if(i==3 && _ZhuGong.shifuid==null){
			hyj.setHTML(i,"<div class=note>您还未拜师！</div>请先在<a href=javascript:_ZhuGong.DisBaseInfo()>主公信息</a>中拜师或自创师门后，此频道才有效")
		}
		setTimeout("_Chat.hyj.resetHTML("+i+")",10)
	})
}
,ding:function(){
	var d=new Dialog(null,true)
	d.setTitle("发送置顶消息")
	d.setHTML("<div class=text>注意，切勿发布"+_H('非法信息','red')+"！</div><table><tr><td>置顶消息</td><td><input class=input size=40 id=msg maxlength=20></td></tr>"
	+"<tr><td>保留天数</td><td><select id=day><option value=1>1<option value=3>3<option value=7>7</select>每天10元宝</td></tr>"
	+"</table><input type=button class=btn id=btn value=发送>")
	
	d.c.all.btn.onclick=function(){
		var n=d.c.all.day.value
			if (!confirm("确认使用"+(n*10)+"元宝发送吗？")) return
			if (d.c.all.msg.value==""){
				alert("必须输入信息")
				d.c.all.msg.focus()
				return
			}
			var t=_DoXMLAct('chatzhiding',_Chat.geturl()+"&isyb=1&msg="+encodeURIComponent(d.c.all.msg.value)+"&n="+n)
			if (_XMLERROR(t)) return
			_ZhuGong.resetXML(t)
			d.Close()	
	}
	d.Show()
}
,geturl:function(){
	return "&cver="+this.ver+"&cid="+this.id
}

}

function ShangDian(){
	var o=new DataBase()
	o.initData=function (){
}
	
	o.disjiage=function(w){
		return w.yb
	}
	
	o.buy=function(wid){
		var w=_BaoWuAry.getobj(wid)
		var d=new Dialog(null,true)
		
		d.setHTML("<div class=text>注意：如果有优惠活动，优惠后总价不足１元宝按１元宝计算</div><table class=listtab><tr><td class=titleTD>名称</td><td>"
			+w.name+"</td></tr><tr><td class=titleTD>当前拥有</td><td>"
			+_ZhuGong.getBaoWu(wid)+"</td></tr><tr><td class=titleTD>当前单价</td><td>"+this.disjiage(w)+"元宝"
			+(w.lijin?" 或 "+w.lijin+"礼金":"")+"</td></tr>"
			+"<tr><td class=titleTD>当前元宝"+_SGG.XG+"礼金</td><td>"+_ZhuGong.yb+_SGG.XG+_ZhuGong.lijin+"</td></tr>"
			+"<tr><td class=titleTD>购买数量</td><td><input maxlength=3 class=input id=n style='width:50px' value=1>　数量不要超过最大限制，详细见"+_H("宝物")+"</td></tr></table>"
			+"<input isyb=1 type=button class=btn value=元宝购买 id=ybbtn>"
			+(w.lijin?"　　<input isyb=2 id=lijinbtn type=button class=btn value=礼金购买>":"")
		)
		d.setTitle(w.name)
		d.c.all.ybbtn.onclick=function(){
			var isyb=this.getAttribute("isyb")
			if (isyb=="1" && !confirm("确认使用元宝购买吗？")) return
			var n=parseInt(d.c.all.n.value)
			if (isNaN(n)||n<=0||n>100){
				alert("数量非法！请输入1-100")
				d.c.all.n.focus()
				return
			}
			var t=_DoXMLAct('buy',"&wtype="+wid+"&isyb="+isyb+"&n="+n)
			if (_XMLERROR(t)) return
			_ZhuGong.resetXML(t)
			_ShangDian.setyblijin()
			_ShangDian.change=true
			d.Close()
			alert("购买成功！")
		}
		if (w.lijin) d.c.all.lijinbtn.onclick=d.c.all.ybbtn.onclick
		d.Show()
	}
	
	o.buy1=function(wid){
		var w=this.ary[wid]
		var d=new Dialog(null,true)
		
		var s="<table class=listtab><tr><td class=titleTD>名称</td><td>"
			+w.subject+"</td></tr><tr><td class=titleTD>说明</td><td>"
			+w.fullstr+"</td></tr><tr><td class=titleTD>当前单价</td><td>"+this.disjiage(w)+"元宝"
			+(w.lijin?" 或 "+w.lijin+"礼金":"")+"</td></tr>"
			+"<tr><td class=titleTD>当前元宝"+_SGG.XG+"礼金</td><td>"+_ZhuGong.yb+_SGG.XG+_ZhuGong.lijin+"</td></tr>"
			+"<tr><td class=titleTD>购买数量</td><td><input maxlength=3 class=input id=n style='width:50px' value=1>"
			+(w.xiangoun?"每2天限购<span class=note>"+w.xiangoun+"</span>":"")
		if(w.maxn)
			s+=" 还剩<span class=note>"+(w.maxn-w.curn)+"</span>个"
		
		s+="</td></tr></table><input isyb=1 type=button class=btn value=元宝购买 id=ybbtn>"
			+(w.lijin?"　　<input isyb=2 id=lijinbtn type=button class=btn value=礼金购买>":"")
		d.setHTML(s)
		d.setTitle(w.subject)
		d.c.all.ybbtn.onclick=function(){
			var isyb=this.getAttribute("isyb")
			if (isyb=="1" && !confirm("确认使用元宝购买吗？")) return
			var n=parseInt(d.c.all.n.value)
			if (isNaN(n)||n<=0||n>100){
				alert("数量非法！请输入1-100")
				d.c.all.n.focus()
				return
			}
			var t=_DoXMLAct('buy',"&wtype="+wid+"&isyb="+isyb+"&n="+n)
			if (_XMLERROR(t)) return
			_ZhuGong.resetXML(t)
			_ShangDian.setyblijin()
			_ShangDian.change=true
			d.Close()
			alert("购买成功！")
		}
		if (w.lijin) d.c.all.lijinbtn.onclick=d.c.all.ybbtn.onclick
		d.Show()
	}
	
	o.close=function(){
		if (this.change){
			if (_ZhuGong.baowudialog && !_ZhuGong.baowudialog.closed)
				_ZhuGong.DisBaoWu(null,true)
		}
	
	}
	
	o.setyblijin=function(){
		var all=this.dialog.c.all
		all.yb.innerText=_ZhuGong.yb
		all.lijin.innerText=_ZhuGong.lijin
	}
	o.miaosha=function(oxml){
		this.temai(oxml,1)
	}
	o.dis1baowu=function(s){
		if (!s) return ""
		var a=s.split(",")
		if(a.length>1) return ""
		var b=s.split("=")
		if (b.length!=2) return ""
		return "拥有:"+_ZhuGong.getBaoWu(b[0])
	}
	o.temai=function(oxml,ismiaosha){
		_ZhuGong.resetXML(oxml)
		this.setyblijin()
		
		this.ary={}
		var s1=""
		var s2=""
		var s3=""
		var rq=_SGG.SRQ()
		var a=oxml.selectNodes("//b/row")
		for (var i=0;i<a.length;i++){
			var o=_XML2Obj(a[i])
			this.ary[o.id]=o
			o.fullstr=o.fuzhu+"宝物："+_BaoWuAry.getlist(o.baowulist)
			
			var jieshu=GetRQ(o.endrq)<rq
			if (!jieshu){
				if (o.maxn && o.curn>=o.maxn) jieshu=true
			}
			
			var t="<tr><td>"
			if (ismiaosha)
				t+=_SGG.getXMLRQ(o.startrq)+"<BR><nobr>"+o.starttime+"-"+o.endtime
			else
				t+=_SGG.getXMLShortRQ(o.startrq)+"<BR><nobr>—"+_SGG.getXMLShortRQ(o.endrq)
			
			t+="</nobr></td><td>"+o.subject+"</td><td>"
			var tt=(o.yb0?"<span class='red del'>原价</span><span class=red>"+o.yb0+"元宝</span>":"")
			if (tt) t+=tt+"<BR>"
			
			t+=(o.lijin?"<span class='note'>"+o.lijin+"</span>礼金<BR>":"")
						+(o.yb?"<span class='note'>"+o.yb+"</span>元宝":"")+"</td><td>"
			if (!jieshu && o.maxn)
						t+=(o.maxn-o.curn)+_SGG.XG+o.maxn
						
			t+="</td><td style='text-align:left'>"+o.fullstr+"</td><td>"
						
			if (!jieshu){
				if (GetRQ(o.startrq)>rq){
					//未开始
					s2+=t+"</td></tr>"
					
				}else{
					//正在
					s1+=t+"<a href=javascript:_ShangDian.buy1("+o.id+")>购买</a>"+this.dis1baowu(o.baowulist)
					
					s1+="</td></tr>"
				}
			}else{
				//已经结束
				s3+=t
				
				var bz=o.bz&0xf
				if ((o.bz&0xf0)!=0x10 && bz>0){
						var r=GetRQ(o.startrq)
						r.setMinutes(24*60*bz)
						s3+="下次："+_disDate(r)+" "+o.starttime
				}
				s3+="</td></tr>"
				
			}
		}

		var s="<table class=listtab><tr><th>时间</td><th>名称</td><th width=100>价格</td><th>剩余/总数</td><th>说明</td><th></td></tr>"
		if (s1) s+="<tr><td colspan=6 class=titleTD>正在进行中</td></tr>"+s1
		if (s2) s+="<tr><td colspan=6 class=titleTD>即将开始</td></tr>"+s2
		if (s3) s+="<tr><td colspan=6 class=titleTD>已经结束</td></tr>"+s3
		
		
		this.dialog.c.all.hyj.setHTML(ismiaosha?0:1,s)
		
	}
	o._disbaowu=function(bfenlei){
		var a=_BaoWuAry.a
		var s="<table class='listtab baowutab'><tr><th>名称</th><th>元宝/礼金</th><th>说明</th><td></td></tr>"
		for (var i in a){
			var b=a[i]
			if ((b.type!=bfenlei)||(i>=200 && i<242)) continue
			
			if (b.yb)
			s+="<tr><td class=titleTD>"+b.name+"</td><td>"+this.disjiage(b)
				+(b.lijin?_SGG.XG+b.lijin:"")+"</td><td class=text>"
				+_SGG.getAllText(b.fuzhu)+"</td><td><a href=javascript:_ShangDian.buy("+b.id+")>购买</a></td></tr>"
		}
		return s
	}
	return o	
}

function DoDisShangDian(returnObj,func){
	_ShangDian=new ShangDian()
	var d=_ShangDian.dialog=new Dialog(_ShangDian)
	
	var s="<div class=text>"+getNoteText("")
	+_SGG.getChongZhiHTML()+"<BR>　注意部分宝物，只能使用元宝不能使用礼金购买；注意宝物有最大拥有数量限制，切勿多买；宝箱只能通过各种任务将领获得，商城只能购买钥匙。</div>"
		+_GetHYJ("hyj",["秒杀","特卖","状态持久","宝箱/钥匙","将领相关","装备相关","道具"])
	
	d.setHTML(s)
	

	_initHYJ(d.c.all.hyj,function(i){
		switch(i){
			case 0:
				_ShangDian.CallBack("miaosha","Act.aspx?act=shangdian&t=1")
				break
			case 1:
					_ShangDian.CallBack("temai","Act.aspx?act=shangdian")
					break
			default:
				d.c.all.hyj.setHTML(i,_ShangDian._disbaowu(i-2));break
		}
	})
	
	d.setTitle("商城")
	d.Show()
	d.c.all.hyj.setHYJOn(0)
	
	if (returnObj)
	d.close=function(){
		returnObj[func]()
	}
	
}





/*******访贤*********/
function FangXian(cell){
	var d=this.dialog=new Dialog(this,true)
	this.cell=cell

	d.setTitle((cell.fullname?cell.fullname:"")+"访贤")
	
	var s="<table class=listtab><tr><td class=titleTD>访贤将领</td>"
		+"<td><span class=inputstr id=r></span></td><td><input class=btn1 type=button id=btnselwj value=选择访贤将领></td></tr>"
		+"<tr><td class=titleTD>搜索范围</td><td id=fanwei>　</td><td></td></tr>"

		+"<tr><td class=titleTD>出行时间</td><td id=time></td><td>"
		+"<input checked id=radio321 type=radio value=-1 class=radio name=radio321><label for=radio321>正常出行</label></td></tr>"
		+"<tr><td class=titleTD>加速出行时间</td><td id=jiasutime></td><td>"
			+_BaoWuAry.getRadio(321)	+"</td></tr>"
		+_BaoWuAry.getBaoMaHTML()
		+"</table><input class=btn id=btnFangXian type=button value=确认>"
		+"<div class=text>"+getNoteText("将领［魅力］越高，能搜索范围越大，且越容易找到在野将领。<BR>因为寻找本身需要一定时间，所以路途近的使用急行军符效果不明显。")
		+_H("访贤","note","访贤更多说明")+"</div>"
	d.setHTML(s)
	
	var THIS=this
	d.c.all.btnselwj.onclick=function(){
		_WJSelect(THIS,"returnSelWJ",{dxy:{dx:cell.mapx,dy:cell.mapy,dname:cell.fullname},sortname:"meili"})
	}
	d.c.all.btnFangXian.onclick=function(){
			var all=THIS.dialog.c.all
			if (!THIS.wj){
				alert("必须选择一个将领，去执行访贤任务")
				all.btnselwj.focus()
				return
			}
			var isyb=_BaoWuAry.getWJRadioIsyb(all)
			if (isyb==-10) return
			
			var url="&uid="+THIS.wj.uid+"&isyb="+isyb+"&mapx="+cell.mapx+"&mapy="+cell.mapy
	
			var oo=_DoXMLAct("fangxian",url)
			if (_XMLERROR(oo)) return false
			_ZhuGong.resetZhuGong(oo)
			d.Close()
			THIS.selwj=null
			alert("将领出发了！")
	}
	_BaoWuAry.setBaoMa(THIS,d.c.all)

	d.Show()
}

FangXian.prototype.returnSelWJ=function(wj){
	var all=this.dialog.c.all
	this.wj=wj
	
	all.r.innerHTML=wj.wjname+"(魅力"+wj.meili+")"
	var n=all.baoma.checked?10:1
	all.time.innerText=GetTimeStr(_SGG.cp_wjtime(wj,this.cell.mapx,this.cell.mapy)/n+60/n)
	all.jiasutime.innerText=GetTimeStr(_SGG.cp_wjjiasutime(wj,this.cell.mapx,this.cell.mapy)/n+60/n)
	n=(wj.meili>>1)+1
	all.fanwei.innerText=n+"X"+n
}



//联盟排名
function PaiMingUnion(){
	var o=new DataBase()
	o.count=10
	o.initData=function(){
		var s="<div class=text>联盟名：<input class=input><input id=btn1 class=btn1 type=button value='查询排名'></div><table class=listtab><tr><th>排名</td><th>名称</th><th>成员数/最大成员</th><th>论坛</th></tr>"
		var a=this.oXml.selectNodes("//row")
		for(var i=0;i<a.length;i++){
			var t=_XML2Obj(a[i])
			s+="<tr"
			if (t.uname==this.uname) s+=" class=trnote"
			else s+=i&1?" class=tr1":""

			s+="><td>"+t.paiming+"</td><td>"+GetLianMengLink(t)+"</td><td>"
				+t.chengyuann+_SGG.XG+t.chengyuanmax+"</td><td>"+(t.lunquid?_SGG.getluntanlink(t.lunquid):"")+"</td></tr>"
		}
		
		s+="</table>"

		s+="<table><tr><td><a href=javascript:_PaiMingUnion.getData()>首页</a>"
			+(this.root.pageno?"　<a href=javascript:_PaiMingUnion.getData('&pageno="+(this.root.pageno-1)+"')>上一页</a>":"")
		s+="</td><td align=right>"
		s+="　共"+(this.root.maxpage+1)+"页<input class=input style='width:50px'><input id=btnp type=button class=btn1 value='跳页'>"
		if (this.root.maxpage>this.root.pageno){
			s+="　<a href=javascript:_PaiMingUnion.getData('&pageno="+(this.root.pageno+1)+"')>下一页</a>"
		}
	
		s+="　<a href=javascript:_PaiMingUnion.getData('&pageno="+(this.root.maxpage)+"')>尾页</a>"
		s+="</td></tr></table>"
		var d=this.dialog
		d.setHTML(s)
		d.c.all.btnp.onclick=function(){
			_PaiMingUnion.getData("&pageno="+this.previousSibling.value)
		}
		d.c.all.btn1.onclick=function(){
			_PaiMingUnion.uname=this.previousSibling.value
			_PaiMingUnion.getData("&uname="+encodeURIComponent(_PaiMingUnion.uname))
		}
	}
	
	o.getData=function(url){
		if (!url) {
			if (this.uname) url="&uname="+encodeURIComponent(this.uname)
				else url=""
		}
		this.prepareData("Act.aspx?act=getPaiMingUnion&count="+this.count+url)
	}
	return o
}



function DoDisPaiMingUnion(uname){
	if(!self._PaiMingUnion) _PaiMingUnion=new PaiMingUnion()
	_PaiMingUnion.uname=uname
	var d=_PaiMingUnion.dialog=new Dialog(_PaiMingUnion)
	d.setTitle("排名")
	d.Show()
	_PaiMingUnion.getData()
}

/*********选择宝物*****************/
function _BaoWuSelect(obj,func,c){
	c=c?c:{}
	var o=new BaoWuSelectData(obj,func,c)
	
	var d=o.dialog=new Dialog(o,c.duoxuan)
	d.setTitle("选择宝物")
	d.setfullscreen()
	d.Show()
	
	o.initData()
	
}


function BaoWuSelectData(obj,func,c){
	var o=new DataBase()
	
	o.returnObj=obj
	o.returnFunc=func
	o.c=c
	o.duoxuan=o.c.duoxuan
	
	o.dis=function(bfenlei){
		var bw={}
		var a=this.c.bw.split(",")
		for(var i in a){
				var b=a[i].split("=")
				var k=b[0]
				bw[k]=(bw[k]?bw[k]:0)+parseInt(b[1])
		}
		
		if(bfenlei>4) bfenlei+=5
		
		var a=_ZhuGong.getBaoWuAry().a
		var s="<table class=listtab>"
		for (var i in a){
			if (a[i].o.type!=bfenlei || a[i].n==0) continue
			
			var b=a[i].o
			var id=b.id
			
			s+="<tr><td class=titleTD><span id=ww"+id+">"+b.name+"</span></td><td class=text>"
			s+=_SGG.getAllText(b.fuzhu)+"</td><td>"+a[i].n+"</td><td><input value='"+(bw[id]?bw[id]:"")+"' type=text class=input style='width:50px' id=wid wid="+id+">"
			if (!this.duoxuan)
				s+="<input type=submit class=btn1 value='选择'>"
	
			s+="</td></tr>"
		}
		s+="</table>"
		
		return s
	}	
	
	o.initData=function(){
		var d=this.dialog
		var THIS=this
		var s="<form id=bwform>"
		var t=""
		if (this.duoxuan)
				t+="　　<input type=submit class=btn value='确定选择'>"
		t+="　　<input type=button id=btn1 class=btn value='清空选择'>"

	  var a=[]
	  for(var i=0;i<9;i++) a[i]=this.dis(i)
	  
		s+="<div class=text>如果宝物没有或者不足，请先在<input type=button class=btn id=btnsd value=商城>中购买"+_GetHYJ("bwhyj",_BaoWuAry.fenleiAry,a,t)



	 if (this.duoxuan)	s+="<input type=submit class=btn value='确定选择'>"

		s+="</form>"

		d.setHTML(s)


		var hyj=d.c.all.bwhyj
			_initHYJ(hyj)
		hyj.setHYJOn(0)

		d.c.all.btnsd.onclick=function(){
			DoDisShangDian(THIS,"returnback")
		}
		this.returnback=function(){
			for(var i=0;i<7;i++)
				hyj.setHTML(i,THIS.dis(i))
		}
		d.c.all.btn1.onclick=function(){
				if (THIS.duoxuan){
					var wid=ToArray(this.form.wid)
					for (var i=0;i<wid.length;i++){
							wid[i].value=""
					}
				}
				return false
		}
		d.c.all.bwform.onsubmit=function(){
				var e=event.srcElement
				var s=""
				if (THIS.duoxuan){
					var wid=ToArray(e.wid)
					for (var i=0;i<wid.length;i++){
							var n=parseInt(wid[i].value)
							if(!isNaN(n) && n>0) s+=","+wid[i].getAttribute("wid")+"="+n
					}
					if(s)s=s.substr(1)
				}else{
					e=e.previousSibling
					var n=parseInt(e.value)
					if(!isNaN(n) && n>0) s+=e.getAttribute("wid")+"="+n
				}
				THIS.returnObj[THIS.returnFunc](s)
				THIS.dialog.Close()
				return false
		}
		
	}


	return o	
}

