很多人问这个问题:
进入卡片中心
最上面有两行
Warning: Division by zero in /homepages/2/d167902661/htdocs/plugins/card/card.inc.php on line 36
Warning: array_chunk() expects parameter 1 to be array, null given in /homepages/2/d167902661/htdocs/plugins/card/card.inc.php on line 37
.....................
之类的问题
只要更新一次卡片缓存就行了
[编辑这个帖子]
//--------------------------------------------------------------------
//插件:天降卡片
//原作:童虎
//修改: FY(文文の封印)
//适用:Discuz! 4.1 系列
//演示:图片见3楼,实际效果见 http://www.bjdyzx.com
//技术支持:discuz.dismall.com
//个人网站:www.bjdyzx.com
//联系信箱/MSN:PerfectWorks@Gmail.com
//--------------------------------------------------------------------
简单介绍:
可以由会员自由添加卡片,添加后的卡片有一定概率(后台设置)会随着发帖和恢复掉落,若是普通卡片掉落,则会有积分的加减变化,如果是特殊卡片,可以由管理员自行确定。比如论坛要搞一个送Q号的活动,管理员可以添加一个叫QQ的特殊卡片。如果这个卡片掉落了,那会员就可以PM管理员,告知卡片掉落的帖子,管理员确定后就可以把QQ号送出。
插件用了钩子,下一个版本升级就不用修改任何文件,直接覆盖插件信息即可。
1.4更新
卡片中心特殊卡片具有红色外框,普通卡片黑色外框,方便区分
浮动信息加入概率显示
加入了特殊卡片单独概率
添加了概率一览(仅在启用特殊卡片时有效)
掉落卡片自动PM
特殊卡片掉落PM添加者
添加更新卡片缓存功能
1.3更新
基本上只是bugfix,功能上没有较大的改进。经过这次修改,卡片掉落概率可以完美的符合设定值。
以后将做的改进:
特殊卡片的特定概率……Finished
掉落特殊卡片自动PM卡片添加者……Finished
使用更好的缓存方法……Already included
任意数量的卡片图片支持……Already included
更好的卡片中心视图……Already included
D40支持……Already included
用户添加卡片审核……Working
掉落卡片转页提示……Cancel For Now
分版设置是否掉落卡片……Just Imagination
分版设置卡片掉落概率……Just Imagination
多积分类型随机掉落……Just Imagination
特殊卡片数量……Just Imagination
掉落卡片记录……Just Imagination
等等……
有更好的建议,发PM给我,谢谢!
1.4升级
执行修改步骤4.1
数据库升级:
- ALTER TABLE `cdb_card` ADD `cprobability` FLOAT( 4 ) NOT NULL DEFAULT '-1';
复制代码
上传附件按目录结构覆盖
重新导入discuz_plugin_card.txt
调整插件设置
更新卡片缓存
1.3升级
上传附件按目录结构覆盖
重新导入discuz_plugin_card.txt
调整插件设置
1.2升级
删除cache.func.php内1.1版本添加的内容(见2楼修改)
上传附件按目录结构覆盖
重新导入discuz_plugin_card.txt
调整插件设置
1.1升级&BUG修改
删除cache.func.php原版本添加的内容
上传附件中upload目录下所有文件
重新导入discuz_plugin_card.txt
全新安装:
数据库升级
- CREATE TABLE `cdb_card` (
- `id` mediumint(8) unsigned NOT NULL auto_increment,
- `username` varchar(30) NOT NULL default '',
- `cname` varchar(30) NOT NULL default '',
- `ceffect` varchar(255) NOT NULL default '0',
- `cint` varchar(50) NOT NULL default '',
- `cardico` varchar(30) NOT NULL default '',
- `type` tinyint(1) unsigned NOT NULL default '0',
- `cprobability` float NOT NULL default '-1',
- PRIMARY KEY (`id`)
- ) TYPE=MyISAM;
复制代码
- ALTER TABLE `cdb_posts` ADD `card` INT( 6 ) UNSIGNED NOT NULL DEFAULT '0';
复制代码
include/newthread.inc.php和include/newreply.inc.php(改法一样)
Step 1.1
找到
- $bbcodeoff = checkbbcodes($message, !empty($bbcodeoff));
复制代码
上面加
- //[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 1/4 START
- eval($hooks['card_carddown']);
- //[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 1/4 END
复制代码
Step 1.2
下面不远处
$db->query("INSERT INTO {$tablepre}posts (fid, tid, first, author, authorid, subject, dateline, message, useip, invisible, anonymous, usesig, htmlon, bbcodeoff, smileyoff, parseurloff, attachment)
VALUES ('$fid', '$tid', '0', '$discuz_user', '$discuz_uid', '$subject', '$timestamp', '$message', '$onlineip', '$pinvisible', '$isanonymous', '$usesig', '$htmlon', '$bbcodeoff', '$smileyoff', '$parseurloff', '$attachment')");
对比添加红字部分
$db->query("INSERT INTO {$tablepre}posts (fid, tid, first, author, authorid, subject, dateline, message, useip, invisible, anonymous, usesig, htmlon, bbcodeoff, smileyoff, parseurloff, attachment/*[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 2/4 START*/, card/*[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 2/4 END*/)
VALUES ('$fid', '$tid', '0', '$discuz_user', '$discuz_uid', '$subject', '$timestamp', '$message', '$onlineip', '$pinvisible', '$isanonymous', '$usesig', '$htmlon', '$bbcodeoff', '$smileyoff', '$parseurloff', '$attachment'/*[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 3/4 START*/ ,'$cardid'/*[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 3/4 END*/)");
Step 1.3
newreply.inc.php找到
- updatepostcredits('+', $discuz_uid, $replycredits);
复制代码
newthread.inc.php找到
- updatepostcredits('+', $discuz_uid, $postcredits);
复制代码
下面加
- //[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 4/4 START
- eval($hooks['card_update']);
- //[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 4/4 END
复制代码
注意newthread.inc.php和newreply.inc.php都要改哦
viewthread.php
Step 2.1
找到- if(!$newpostanchor && $post['dateline'] > $lastvisit) {
复制代码
上面加入
- //[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 1/1 START
- eval($hooks['card_readcard']);
- //[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 1/1 END
复制代码
viewthread.htm模版
Step 3.1
找到
- <span style="font-size: {MSGFONTSIZE}">$post[message]</span>
复制代码
下面加入
- <!--[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 1/1 START-->
- <!--{if $post[card]}-->
- <!--{if $post[card][type]=="0"}-->
- <TABLE height=115 cellSpacing=1 cellPadding=0 align=right border=0>
- <TR><TD bgColor=#ffffff>
- <TABLE height=107 cellSpacing=1 cellPadding=0 width="98%" align=center bgColor=#000000 border=0><TR><TD bgColor=#ffffff>
- <TABLE height=107 cellSpacing=2 cellPadding=0 width=400 border=0>
- <TR><TD vAlign=middle width=90 rowSpan=3>
- <DIV align=center><IMG height=98 src="images/card/$post[card][cardico]" width=73></DIV>
- </TD>
- <TD style="COLOR: #ff0000">只听"哐当"一声响,天上掉下来个锅盖,正砸在 $post[username] 头上,上面还有 $post[card][username] 做的 $post[card][cname] 卡一张</TD>
- </TR>
- <TR><TD style="COLOR: #ff0000">卡片说明: $post[card][cint]</TD></TR>
- <TR><TD style="COLOR: #ff0000">卡片效果: $post[card][ceffect] $extcredits[$_DPLUGIN[card][vars][extcredits]][unit] $extcredits[$_DPLUGIN[card][vars][extcredits]][title]</TD></TR>
- </TABLE>
- </TD></TR></TABLE>
- </TD></TR></TABLE>
- <!--{else}-->
- <TABLE height=115 cellSpacing=1 cellPadding=0 align=right border=0>
- <TR><TD bgColor=#ff0000>
- <TABLE height=107 cellSpacing=1 cellPadding=0 width="98%" align=center bgColor=#ff0000 border=0><TR><TD bgColor=#ffffff>
- <TABLE height=107 cellSpacing=2 cellPadding=0 width=400 border=0>
- <TR><TD vAlign=middle width=90 rowSpan=3>
- <DIV align=center><IMG height=98 src="images/card/$post[card][cardico]" width=73></DIV>
- </TD>
- <TD style="COLOR: #ff0000">只听"哐当"一声响,天上掉下来个锅盖,正砸在 $post[username] 头上,上面还有 $post[card][username] 做的 $post[card][cname] 卡一张</TD>
- </TR>
- <TR><TD style="COLOR: #ff0000">卡片说明: $post[card][cint]</TD></TR>
- <TR><TD style="COLOR: #ff0000">卡片效果: $post[card][ceffect]</TD></TR>
- </TABLE>
- </TD></TR></TABLE>
- </TD></TR></TABLE>
- <!--{/if}-->
- <!--{/if}-->
- <!--[天降卡片 BY 童虎 / D4化 BY PerfectWorks] add 1/1 END-->
复制代码
pms.lang.php语言包
Step 4.1
找到
下面加
- 'carddown_subject' => '[Discuz!] 您发表的帖子掉落了卡片',
- 'carddown_message' => '这是由论坛系统自动发送的通知短消息。
- [b]以下所发表的帖子掉落了卡片[/b]
- [b]帖子:[/b] [url={$boardurl}viewthread.php?tid={$tid}&pid={$pid}&page={$cpage}&extra={$extra}#pid{$pid}]点击前往[/url]
- [quote][align=center][img]{$boardurl}images/card/{$_CARD[card][$cardid][cardico]}[/img]
- 卡片名称:{$_CARD[card][$cardid][cname]}
- 卡片作者:{$_CARD[card][$cardid][username]}
- 卡片效果:{$extcredits[$cextcredits][title]}{$_CARD[card][$cardid][ceffect]}
- 卡片描述:{$_CARD[card][$cardid][cint]}[/align]
- [/quote]',
复制代码
按目录结构上传覆盖附件upload文件夹内所有文件
导入discuz_plugin_card.txt插件信息
全新安装结束
注意:开始安装完毕后,默认的掉落卡片机率是50%,可以用这个进行测试
测试完成后,务必请更改自定义积分类别,和掉落概率
反安装方法:
删除所有修改(见上)
后台删除插件
删除plugins/card目录
删除templates/default/card.htm
数据库卸载代码:
- DROP TABLE `cdb_card`;
- ALTER TABLE `cdb_posts` DROP `card`;
复制代码
版主友情提示:
请楼下回帖的朋友们注意咯,如果已经安装成功的请回来说明下安装和使用情况。这样有利于版主根据大家回馈的信息给作者以肯定和鼓励。同时,也方便作者了解自己作品的使用情况。
您的每个文字将是对作者的鼓励和支持!
M55
[ 本帖最后由 PerfectWorks 于 2006-6-17 09:12 编辑 ] |