2007-09-10 | #1 |
初级会员
注册: 07年02月02日
来自: 新疆
帖子: 48
声望力: 0
声望:
20
积分:6
精华:1
现金:91两梁山币
资产:91两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0 |
请教个xyj2000的问题
判师惩罚掉特殊skills,如moon的snowsword,只要enable 还在,可以fight yu tu升级,可是像xs的ningxie-force,moon的法术等等,怎么才能偷出来啊?
|
|
2007-09-11 | #2 |
初级会员
注册: 07年09月04日
帖子: 31
声望力: 0
声望:
10
现金:60两梁山币
资产:60两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0 |
回复: 请教个xyj2000的问题
带不出来吧 |
|
2007-09-11 | #3 |
初级会员
注册: 07年02月02日
来自: 新疆
帖子: 48
声望力: 0
声望:
20
积分:6
精华:1
现金:91两梁山币
资产:91两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0 |
回复: 请教个xyj2000的问题
我有试过用quests: 建新人,bai xs,学了spells,dengxian-dafa,force,ningxie- force,bainiao-jian,判出xs后只留了dengxian- dafa,force,bainiao-jian三样,enable 可以看到ningxie- force. 连续做了576个quest,没给过ningxie-force.其它skill都给过多 次!! 这个方法倒底行不行啊?? |
|
2007-09-11 | #4 |
初级会员
注册: 07年09月04日
帖子: 31
声望力: 0
声望:
10
现金:60两梁山币
资产:60两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0 |
回复: 请教个xyj2000的问题
详情请参见原码 |
|
2007-09-11 | #5 |
初级会员
注册: 07年09月04日
帖子: 31
声望力: 0
声望:
10
现金:60两梁山币
资产:60两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0 |
回复: 请教个xyj2000的问题
chaofeng需要激发ningxie-force吗? 还是只要有这个技能就能用? |
|
2007-09-11 | #6 |
初级会员
注册: 07年02月02日
来自: 新疆
帖子: 48
声望力: 0
声望:
20
积分:6
精华:1
现金:91两梁山币
资产:91两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0 |
回复: 请教个xyj2000的问题
要激发的.原码看不懂 // by snowcat inherit NPC; #include <reporting.h> void do_improve(object who, string name, int points, int level); void create() { set_name("杜如晦", ({ "du ruhui", "du", "ruhui", "da chen" })); set("title", "大臣"); set("gender", "男性"); set("age", 60); set("per", 30); set("combat_exp", 300000); set_skill("force", 80); set_skill("spells", 80); set_skill("unarmed", 80); set_skill("dodge", 80); set_skill("parry", 80); set("gin", 3000); set("max_gin", 3000); set("kee", 3000); set("max_kee", 3000); set("sen", 3000); set("max_sen", 3000); set("force", 1000); set("max_force", 1000); set("mana", 1000); set("max_mana", 1000); set("force_factor", 80); setup(); carry_object("/d/obj/cloth/jinpao")->wear(); } void reward (object who) { object me = this_object (); int points = who->query_temp("quest/reward_point"); mapping skills = who->query_skills(); string *names; string name; string channel = "sldh"; string *channels = who->query("channels"); int level; if ( !pointerp(channels) || !sizeof(channels) ) channels = ({ channel }); else if (member_array(channel, channels) == -1) channels += ({ channel }); who->set("channels",channels); if (sizeof(skills) == 0) { name = "force"; level = 2; } else { names = keys(skills); name = names[random(sizeof(names))]; level =skills[name]+1; } points = points * (who->query("kar")/2+1); message_vision ("$N对$n一拜:菩萨托陛下传法旨,赐"+RANK_D->query_respect(who)+ chinese_number(points)+"点"+to_chinese(name)+"技能!\n",me,who); /* command (channel+" "+who->query("name")+who->query("quest/reason")+"陛下有旨,赐"+ chinese_number(points)+"点"+to_chinese(name)+"技能!"); */ who->add("quest/gain/skills/"+name,points); reporting (who, who->query("quest/reason"), points, "点"+to_chinese(name)+"技能"); do_improve(who, name, points, level); } // mon 3/30/98 allow players to increase several levels of skill // if they got big skill reward points. // (though the penalty is need double the normal points to increase // one level) void do_improve(object who, string name, int points, int level) { int pot; int high=(level>50); // for level>50, can't increase level. // for level<=50, possible to increase level. if(!who) return; pot=level*level*2; if(points>pot) { //level<50 so this is only useful for low level skills. //players can't use this method to improve their high level skills. //must learn to improve. who->improve_skill(name, pot, high); call_out("do_improve", 1, who, name, points-pot, level+1); } else who->improve_skill(name, points, high); //tell_object(who,name+" "+level+" "+pot+"\n"); } - |
|