⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shexing-diaoshou.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
// shexing-diaoshou.c 蛇形刁手#include <ansi.h>inherit SKILL;  string *order = ({""HIY"", ""HIG"", ""RED"", ""MAG"", ""YEL"", ""HIC"", ""HIW"", ""HIR"",""HIB"", ""CYN"",""WHT"",""HIM"",""BLU""});mapping *action = ({([	"action" : "$N一式"+(order[random(13)])+"「灵蛇出洞」"NOR",右手虚晃,左手扬起,突然拍向$n的背后二穴",	"force" : 90,        "dodge" : 50,"damage": 140,	"lvl" : 0,	"skill_name" : "灵蛇出洞",	"damage_type" : "瘀伤"]),([	"action" : "$N侧身一晃,一式"+(order[random(13)])+"「虎头蛇尾」"NOR",左手拿向$n的肩头,右拳打向$n的胸口",	"force" : 120,        "dodge" : 50,"damage": 240,	"lvl" : 10,	"skill_name" : "虎头蛇尾",        "damage_type" : "瘀伤"]),([	"action" : "$N一式"+(order[random(13)])+"「画蛇添足」"NOR",右手环拢成爪,一出手就向扣$n的咽喉要害",	"force" : 130,        "dodge" : 20,	"damage": 185,	"lvl" : 20,	"skill_name" : "画蛇添足",        "damage_type" : "瘀伤"]),([	"action" : "$N左手虚招,右掌直立,一式"+(order[random(13)])+"「杯弓蛇影」"NOR",错步飘出,疾拍$n的面门",	"force" : 160,        "dodge" : 20,	"damage": 180,	"lvl" : 30,	"skill_name" : "杯弓蛇影",        "damage_type" : "瘀伤"]),([	"action" : "$N使一式"+(order[random(13)])+"「蛇行鼠窜」"NOR",左拳上格,右手探底突出,抓向$n的裆部",	"force" : 200,        "dodge" : 30,	"damage": 195,	"lvl" : 38,	"skill_name" : "蛇行鼠窜",        "damage_type" : "瘀伤"]),([	"action" : "$N一式"+(order[random(13)])+"「蛇磐青竹」"NOR",十指伸缩,虚虚实实地袭向$n的全身要穴",	"force" : 310,        "dodge" : 40,	"damage": 225,	"lvl" : 51,	"skill_name" : "蛇磐青竹",        "damage_type" : "内伤"]),([	"action" : "$N双手抱拳,一式"+(order[random(13)])+"「万蛇汹涌」"NOR",掌影翻飞,同时向$n施出九九八十一招",	"force" : 380,        "dodge" : 40,	"damage": 230,	"lvl" : 56,	"skill_name" : "万蛇汹涌",        "damage_type" : "内伤"]),([	"action" : "$N一式"+(order[random(13)])+"「白蛇吐信」"NOR",拳招若隐若现,若有若无,急急地拍向$n的丹田",	"force" : 460,        "dodge" : 40,	"damage": 340,	"lvl" : 60,	"skill_name" : "白蛇吐信",        "damage_type" : "内伤"]),});int valid_enable(string usage) { return usage=="hand" || usage=="parry"|| usage=="unarmed"; }int valid_learn(object me){	if (me->query_temp("weapon") || me->query_temp("secondary_weapon"))		return notify_fail("练蛇形刁手必须空手。\n");	if ((int)me->query_skill("hamagong", 1) < 20)		return notify_fail("你的蛤蟆功不够 \n");	if ((int)me->query("max_neili") < 100)		return notify_fail("你的内力太弱,无法练蛇形刁手。\n");	return 1;}int valid_combine(string combo) { return combo=="lingshe-quan"; }string query_skill_name(int level){        int i;        for(i = sizeof(action)-1; i >= 0; i--)                if(level >= action[i]["lvl"])                        return action[i]["skill_name"];}mapping query_action(object me, object weapon){        int i, level,ob_lvl,attack;		object ob;				ob = me->select_opponent();		level = (int)me->query_skill("shexing-diaoshou", 1)+1;				attack=level/100;		if (!ob) {        for(i = sizeof(action); i > 0; i--)                if(level > action[i-1]["lvl"])                        return action[NewRandom(i, 20, level/5)];}if (!me) {        for(i = sizeof(action); i > 0; i--)                if(level > action[i-1]["lvl"])                        return action[NewRandom(i, 20, level/5)];}		if(level>200			&&random(level)>level/3			&&(random(me->query_dex())>20)			&&living(ob)//			&&me!= ob			&&me->query("neili")>800                        && !me->is_busy()                         && !me->query_temp("noauto")		&& !me->query_temp("dsauto"))		{				if(attack>4) attack=4;				attack=random(attack);				if(attack<=1) attack=1;				if(attack>4) attack=4;message_vision(HIY "紧接着,$N口中发出“嘶嘶”的声音,双手半曲,三指上竖成蛇状,陪合着潇遥步法,有如急风暴雨般攻出了"+			   chinese_number(attack+1)+"招。\n" NOR, me);					for(i=0;i<attack;i++)					{						me->add("neili", -(50+random(50)));												if(!ob)						{						break;						}//						if(me=ob)//						{//						break;//						}						if(!me)						{						break;						}						if(!living(ob))						{						break;						}						if(ob && me)						{						me->set_temp("dsauto",1);						COMBAT_D->do_attack(me, ob, me->query_temp("weapon"), 1);  						me->delete_temp("dsauto");                                                }					}		}else		if(level>200			&&random(level)>level*2/5			&&(random(me->query_dex())>25)			&&living(ob)			&&me->query("neili")>500			&&random(5)>2&& !me->query_temp("noauto")			)	{			message_vision(YEL "$N揉身而上,自左向右轻轻回旋一周,$n被$N的身行所迷惑,顿时放弃攻击,改为自守。\n" NOR, me,ob);if (ob && me &&ob!=me){  if( !ob->is_busy() ){			ob->start_busy(1+random(2));}			me->add("neili", -50);}		}		                for(i = sizeof(action); i > 0; i--)                if(level > action[i-1]["lvl"])                        return action[NewRandom(i, 20, level/5)];}int practice_skill(object me){	if ((int)me->query("qi") < 30)		return notify_fail("你的体力太低了。\n");	if ((int)me->query("neili") < 20)		return notify_fail("你的内力不够练蛇形刁手。\n");	me->receive_damage("qi", 25);	me->add("neili", -5);	return 1;}string perform_action_file(string action){    return __DIR__"shexing-diaoshou/" + action;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -