mud_sanc 板


LINE

※ 引述《justinj (黑旋风)》之铭言: : 我在某一个档案merc_room.c 有设定了一个动作finish : add_action("cmd_finish","finish") : int cmd_finish(string str) : { : .... : } : 那我另一个档案069.c 去 inherit 上述档 : 然後重新增加部分的资料 : int cmd_finish(string str) : { : ::cmd_finish(str); : ...... //B区块 : ...... : } : 那我要怎麽样写才会让我执行finish指令时 : 1.当我还未完成时,不去执行B区块,但会吐出原讯息代表未完成的讯息 : 2.当我完成时,会去执行B区块 我猜你并不想动 merc_room.c,在这情况下如何判断 ::cmd_finish(str); 的结果是「完成」或「未完成」 比方说防具店有 sell_it 函数,然後你自己的防具店 inherit 了样本防具店然後自订函数 int sell_it(string str) { ::sell_it(str); 那你的意思就接近玩家卖东西时「有卖成功=完成」 才执行 B区块,卖失败时就不执行,然後产生原先卖 失败的讯息。 「则以防具店为例」一般我会这样做 int selling_it(string str) { if(this_object()->sell_it(str)>0) // return 1 时 { B区段; } else return sell_it(str); } 会这样写是因为 this_object 本身 inherit 防具店 ,所以 this_object 就能呼叫 sell_it。 而 >0 时它一定会出现卖出物品成功讯息同时执行 B 区段,<=0 时代表可能有 return notify_fail 的区 段代表卖出失败,return notify_fail 有可能不会显 示讯息,但是透过 return sell_it 该讯息就会出现 这前提是建立在 1.以防具店这个 case 为例 2.防具店的 sell_it 是用 return 1 及 return notify_fail 或是 return 0 来区别成功及失败 假设不幸的不管它成功或失败都是用 write + return 1 来写,那一般我的做法是我必须先知道我继承的 sell_it 函数本身是在执行哪些东西,这样我才有办法对它做 必要的判断,例如 int sell_it(string str) { set("origin_objnum",objnum); ::sell_it(str); if(obj_num!=query("origin_objnum")) // 当然实际上根本不会这样写 { // 代表本次执行 ::sell_it(str) 後防具店的物品内容有改变 执行 B 区段; } --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.61.157.53
1F:→ laechan :然後一般的情况使用 :: 多是基於想直接套用前人写的 10/29 17:02
2F:→ laechan :所以你的 case 我比较建议你自己写, 或是就直接套用 10/29 17:03
3F:→ laechan :前人的再自己前後加点东西,或是建立属於自己的样本 10/29 17:03
4F:→ laechan :像之前你对船的样本不满意,其实当时可做的是更改船的 10/29 17:04
5F:→ laechan :样本,而不是大家都继承样本了,只有你的跟其它人不同 10/29 17:04
6F:→ laechan :你可以思考的是如何让大家继承的船都能像你的船一样 10/29 17:04
7F:→ laechan :除非你的船就是真的很特别 10/29 17:06
8F:推 justinj :了解... 10/29 18:05







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP