安装方法:
安装步骤:
安装之前需要童虎的下拉菜单,没按过的看下面安装下拉菜单的部分,安过童虎虚拟形象就自带下拉菜单了。
因为网上流传的宠物太多,表的结构还都不一样,所以如果以前安过宠物
全新安装或升级安装出现任何问题请执行完全卸载的步骤再进行,步骤如下:
1。升级数据库:ALTER TABLE cdb_members DROP pktime;
这一步出错没有关系,说明你没有这一列
2。执行pet_install.php进行卸载
经过完全卸载的步骤,载进行下面的全新安装就完全没有问题了。
<1>全新安装:
1.在插件中心导入plug_pet.txt中的配置数据(复制到”导入插件“下的文本框提交即可)
本插件不用开启功能即可正常工作,是否显示此插件连接也清选否。
2.把pet.php、pet_install.php、目录images、目录pet、目录templates复制到论坛根目录下。覆盖原有文件
3.运行pet_install.php,选全新安装。安装成功后删初此文件。
4.修改header.htm在 | <a href="faq.php">{lang faq}</a> 之前加入 | <a href="pet.php">宠物中心</a>
完成!
<2>升级安装
升级只适用于木瓜版1.1(悠闲之心版似乎没有太大改动程序,也可)
第一种方法:
1.在插件中心删除原插件配置数据。导入plug_pet.txt中的配置数据
(复制到”导入插件“下的文本框提交即可)
本插件不用开启功能即可正常工作,是否显示此插件连接也清选否。
2。把pet.php、pet_install.php、目录images、目录pet、目录templates复制到论坛根目录下。覆盖原有文件
3。运行pet_install.php,选升级安装。安装成功后删初此文件。
4.修改header.htm在 | <a href="faq.php">{lang faq}</a> 之前加入 | <a href="pet.php">宠物中心</a>
第二种方法:
1.在插件中心删除原插件配置数据。导入plug_pet.txt中的配置数据
(复制到”导入插件“下的文本框提交即可)
本插件不用开启功能即可正常工作,是否显示此插件连接也清选否。
2。把pet.php、pet_install.php、目录images、目录pet、目录templates复制到论坛根目录下。覆盖原有文件
3。在论坛后台管理中,升级数据库,输入database.txt中的sql语句。
4.修改header.htm在 | <a href="faq.php">{lang faq}</a> 之前加入 | <a href="pet.php">宠物中心</a>
@@@@@@@@@@@@@@@@@关于下拉菜单的安装@@@@@@@@@@@@@@@@@@@@@
修改 include/common.js
于文件尾加入 ( 若之前已安装菜单 , 请将之前菜单的代码删掉 )
- <!--
- var menuOffX=0 //菜单距连接文字最左端距离
- var menuOffY=18 //菜单距连接文字顶端距离
- var fo_shadows=new Array()
- var linkset=new Array()
- var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1
- var ns6=document.getElementById&&!document.all
- var ns4=document.layers
- function openScript(url, width, height){
- var Win = window.open(url,"openScript",'width=' + width + ',height=' + height + ',resizable=1,scrollbars=yes,menubar=no,status=no' );
- }
- function showmenu(e,vmenu,mod){
- if (!document.all&&!document.getElementById&&!document.layers)
- return
- which=vmenu
- clearhidemenu()
- ie_clearshadow()
- menuobj=ie4? document.all.popmenu : ns6? document.getElementById("popmenu") : ns4? document.popmenu : ""
- menuobj.thestyle=(ie4||ns6)? menuobj.style : menuobj
-
- if (ie4||ns6)
- menuobj.innerHTML=which
- else{
- menuobj.document.write('<layer name=gui bgColor=#E6E6E6 width=165 onmouseover="clearhidemenu()" onmouseout="hidemenu()">'+which+'</layer>')
- menuobj.document.close()
- }
- menuobj.contentwidth=(ie4||ns6)? menuobj.offsetWidth : menuobj.document.gui.document.width
- menuobj.contentheight=(ie4||ns6)? menuobj.offsetHeight : menuobj.document.gui.document.height
-
- eventX=ie4? event.clientX : ns6? e.clientX : e.x
- eventY=ie4? event.clientY : ns6? e.clientY : e.y
-
- var rightedge=ie4? document.body.clientWidth-eventX : window.innerWidth-eventX
- var bottomedge=ie4? document.body.clientHeight-eventY : window.innerHeight-eventY
- if (rightedge<menuobj.contentwidth)
- menuobj.thestyle.left=ie4? document.body.scrollLeft+eventX-menuobj.contentwidth+menuOffX : ns6? window.pageXOffset+eventX-menuobj.contentwidth : eventX-menuobj.contentwidth
- else
- menuobj.thestyle.left=ie4? ie_x(event.srcElement)+menuOffX : ns6? window.pageXOffset+eventX : eventX
-
- if (bottomedge<menuobj.contentheight&&mod!=0)
- menuobj.thestyle.top=ie4? ie_y(event.srcElement)+menuOffY : ns6? window.pageYOffset+eventY+10 : eventY
- else
- menuobj.thestyle.top=ie4? ie_y(event.srcElement)+menuOffY : ns6? window.pageYOffset+eventY+10 : eventY
- menuobj.thestyle.visibility="visible"
- ie_dropshadow(menuobj,"#999999",3)
- return false
- }
- function ie_y(e){
- var t=e.offsetTop;
- while(e=e.offsetParent){
- t+=e.offsetTop;
- }
- return t;
- }
- function ie_x(e){
- var l=e.offsetLeft;
- while(e=e.offsetParent){
- l+=e.offsetLeft;
- }
- return l;
- }
- function ie_dropshadow(el, color, size)
- {
- var i;
- for (i=size; i>0; i--)
- {
- var rect = document.createElement('div');
- var rs = rect.style
- rs.position = 'absolute';
- rs.left = (el.style.posLeft + i) + 'px';
- rs.top = (el.style.posTop + i) + 'px';
- rs.width = el.offsetWidth + 'px';
- rs.height = el.offsetHeight + 'px';
- rs.zIndex = el.style.zIndex - i;
- rs.backgroundColor = color;
- var opacity = 1 - i / (i + 1);
- rs.filter = 'alpha(opacity=' + (100 * opacity) + ')';
- //el.insertAdjacentElement('afterEnd', rect);
- fo_shadows[fo_shadows.length] = rect;
- }
- }
- function ie_clearshadow()
- {
- for(var i=0;i<fo_shadows.length;i++)
- {
- if (fo_shadows[i])
- fo_shadows[i].style.display="none"
- }
- fo_shadows=new Array();
- }
- function contains_ns6(a, b) {
- while (b.parentNode)
- if ((b = b.parentNode) == a)
- return true;
- return false;
- }
- function hidemenu(){
- if (window.menuobj)
- menuobj.thestyle.visibility=(ie4||ns6)? "hidden" : "hide"
- ie_clearshadow()
- }
- function dynamichide(e){
- if (ie4&&!menuobj.contains(e.toElement))
- hidemenu()
- else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
- hidemenu()
- }
- function delayhidemenu(){
- if (ie4||ns6||ns4)
- delayhide=setTimeout("hidemenu()",500)
- }
- function clearhidemenu(){
- if (window.delayhide)
- clearTimeout(delayhide)
- }
- function highlightmenu(e,state){
- if (document.all)
- source_el=event.srcElement
- else if (document.getElementById)
- source_el=e.target
- if (source_el.className=="menuitems"){
- source_el.id=(state=="on")? "mouseoverstyle" : ""
- }
- else{
- while(source_el.id!="popmenu"){
- source_el=document.getElementById? source_el.parentNode : source_el.parentElement
- if (source_el.className=="menuitems"){
- source_el.id=(state=="on")? "mouseoverstyle" : ""
- }
- }
- }
- }
复制代码
//-->
修改 css.htm
于 </style> 前加入:
- .menuskin {
- filter: Alpha(Opacity=80);
- BORDER: #666666 1px solid; VISIBILITY: hidden; FONT: 12px Verdana;
- POSITION: absolute;
- BACKGROUND-COLOR:#FFFFFF;
- background-repeat : repeat-y;
- }
- .menuskin A {
- PADDING-RIGHT: 9px; PADDING-LEFT: 7px; COLOR: black; TEXT-DECORATION: none; behavior:url(inc/noline.htc);
- }
- #mouseoverstyle {
- BACKGROUND-COLOR: #F2F5FB; margin:2px; padding:0px; border:#8396C3 1px solid;
- }
- #mouseoverstyle A {
- COLOR: black
- }
- .menuitems{
- margin:2px;padding:1px;word-break:keep-all;
- }
复制代码
打开include/cache.php
找到:
- $data["pluglink"] .= '| <a href="plugins.php?p='.$plugs[plug_key].'"><font class="navtd">'.$plugs['plug_title'].'</font></a> ';
复制代码
改成:
- $data["pluglink"] .= '<div class=menuitems><a style=font-size:9pt;line-height:14pt; href=plugins.php?p='.$plugs[plug_key].'>'.$plugs['plug_title'].'</a></div>';
复制代码
打开header.htm模板
找到<body>标签位于这个之后一行加入:
- <div class=menuskin id=popmenu
- onmouseover="clearhidemenu();highlightmenu(event,'on')"
- onmouseout="highlightmenu(event,'off');dynamichide(event)" style="Z-index:100"></div>
复制代码
找到:
改成:
- <a href="index.php " onMouseOver="showmenu(event,'$pluglink')" style="CURSOR:hand" >论坛插件</a>
复制代码
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
★宠物系统后台管理说明:
一、添加自定义宠物:
宠物名字﹕输入宠物的中文名称。如﹕泡泡龙
宠物类别﹕输入宠物的类别英文或拼音名﹐如﹕dragon 并将相关宠物图片上传至
images/pet/宠物类别 目录下面 。如﹕将dragon类的宠物图片上传至
images/pet/dragon 目录下面 图片名称也按宠物类别进行改变﹐
例如﹕dragon类的图片名称应该是﹕dragon0.gif dragon1.gif dragon2.gif ....dragon11.gif
每类宠物图片為0-11共12张图片。
宠物介绍﹕长度不能超过25个汉字
宠物属性﹕输入金﹑木﹑水﹑火﹑土等五行属性。
注﹕新添加的宠物类别不能和已有的宠物类别重名﹐否则将会出现宠物头像不能正常显示。
二、会员宠物管理:
可以对会员宠物的各项数据进行编辑﹐
但有些属性(例如﹕级别、hp最大值、攻击力、防御力)是根据宠物的exp与基本五围能力进行计算的﹐
如果改过之后没有相应地修改exp值与基本五围资料,这些属性会被按宠物的exp重新计算。
三、修改菜单功能:
这个版本把菜单放在了一个模板文件pet_navbar.htm裡面﹐分特效菜单和下拉菜单
打开pet_navbar.htm文件可以看见就可以看见﹐如果你為宠物系统添加新功能直接在pet_navbar.htm模板裡面修改﹐
就可以在菜单裡面添加新的功能
四、物品新增:
1.物品种类: (例如:sword,1)
本项目是对映 images\item 目录下的图片,如 sword,1 即為 images\item\sword\1.gif 档
也是代表该物品的物品编号。
2.物品名称:
这可自行取个好听的名字
3.物品文字说明:
这部份是物品的功能说明,也可以自己编。
4.可使用等级:
设定该物品最低可使用的等级,设定為 0 即為不限等级。
5.物品最大数量:
设定物品的一格最大数量為多少。
6.物品效能: (+hp,100,+sp,100)
设定物品的能力,设定的格式為 效能,数值 ,例如 +hp,100 代表 增加 100 hp 的意思囉
目前能设定的功能请参考目前预设的物品效能相关资料。
新功能、新效能会在往后的版本陆续补上。
注意:如果写为这样:+spd,10-120 则物品在卖出或掉宝时敏捷spd都会在10到120之间随机生成能力
7.物品交易价值: (摆店价,倒店价)
这部份就关於各商店贩卖物品的价位设定,与玩家把物品卖给商店的价位设定了。
8.交易限制:
设定该物品所能进行的交易项目。
可卖店 :该物品可以卖给商店换回金币
可拍卖 :设定该物品是否可与其它玩家交易。
可使用 :设定该物品是使用的功能,如復活之羽等等。
可装备 :设定该物品是可装备的。
可修理 :设定该物品是可修理的。如果物品可修理,请务必设定物品的+dur +durmax属性
9.装备设定: 头 左耳 右耳 左手 右手 身体 脚
设定物品能装备的位置。
五、商店物品增设:
1.先设定完成新的物品。
2.修改商店档 itemshop.php , weaponshop.php
3.设定 $sellitem 变量增加贩卖项目 例如:$sellitem[10]="'sword,10'";
4.在该商店即可看到新上架的物品了。
@@@@@@@@@@@@@@@@@@@@关于添加掉宝物品@@@@@@@@@@@@@@@@@@@@@@
需要修改/pet/petconfig.php
找到“//掉宝设定暂定10级“的行在下面输入要填加的调宝物品
如要填加4级物品,则加入:$TreasureArray[4][13]="potion,1";
数组的第一个索引代表级数,第二个是本级别物品的序号一定不能跟其他物品重复。
potion,1就是物品新增时的物品种类。
@@@@@@@@@@@@@@@@@@@@@关于发贴加经验@@@@@@@@@@@@@@@@@@@@@@@@
发新贴加宠物经验
在include/newthread.php中末尾
- showmessage('post_newthread_succeed', "viewthread.php?tid=$tid");
复制代码
的上面加入
- $db->query("UPDATE cdb_mypetdata SET mypetexp= mypetexp+30 WHERE username='$discuz_user' and mypetdead <1 and openpk<2");
复制代码
本例是发新贴+30经验 具体数值可自行修改,本例死亡和拒绝挑战的状态下不加经验,要想去掉这两个条件刻分别去掉 mypetdead <1 和 openpk<2
会贴加经验需要修改include/newreply.php 方法同上。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
先写这么多,近期会把贴子中显示宠物信息、查看会员资料显示宠物信息的方法和加为净华贴随机得到物品的方法整理出来,发布在http://xyz-hunter.ful.cn上,大家可以先去看看效果。
[ 本帖最后由 t1000 于 2005-8-2 22:26 编辑 ] |