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

📄 sanxiao.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
//Cracked by Roath#include <ansi.h>inherit ITEM;int throw_ob(string arg);void create(){   set_name(BLU"逍遥三笑散"NOR, ({"sanxiao san", "san", "sanxiao", "zhuihun"}));   if (clonep())      set_default_object(__FILE__);   else {      set("long", HIG"一包可以弹(tanshe)的毒药。\n" NOR);      set("unit", "包");      set("value", 0);		set("pour_type", "sanxiao_poison");   }   setup();}void init(){        object me = this_player();        add_action("throw_ob","tanshe"); 	add_action("do_eat", "eat");}int throw_ob(string arg){   int skill, skill2, thr, dod, poi, my_neili, u_neili, myexp, urexp, par;   mapping myfam, vfam;   object me,victim;   me=this_player();   if ( (!( myfam= me->query("family")) || myfam["family_name"] != "星宿派"))                  return notify_fail("只有星宿弟子利用本门秘传内功方能使用三笑散。\n");         if( !arg ) return notify_fail("你想对谁使用三笑散?\n");        if( !objectp(victim = present(arg, environment(me))) )                return notify_fail("这里没有这个人。\n");        if( victim->query("id")==me->query("id"))                return notify_fail("你想杀自己吗?\n");   if( me->query("neili") <= 2000 ){        write("你的内力不够摧迫逍遥三笑散毒!\n");        return 1;   }   if (me->query_skill("poison", 1) < 100){        write("当心毒死你自己!\n");        return 1;   }   if( environment(me)->query("no_fight") ) return notify_fail("不行!\n");	   if( me->is_busy() ) return notify_fail("( 你上一个动作还没有完成,不能施用外功。)\n");	if( !victim	||	!victim->is_character()	||	!me->is_fighting(victim) )		return notify_fail("三笑追魂散,只能对战斗中的对手使用。\n");	   if (victim->query_condition("sanxiao_poison")){          write("此人已中了三笑追魂散,命不久矣!\n");        return 1;   }   if (me->query_condition("killer") > 10 && userp(victim)){        write("你感到一丝内疚,手突然软了下来。\n");        return 1;   }      tell_object(me, BLU"你轻轻一弹指,将逍遥三笑散往"+victim->query("name")+"身上弹去。\n"NOR);   	   if (me->query_skill("poison", 1) < 100){           this_object()->set_temp("used", 1);           me->apply_condition("sanxiao_poison",4);            tell_object(me, "你毒炼得火侯不够,毒着自己了!\n");           destruct(this_object());        return 1;   }   if (me->query_skill("poison", 1) < victim->query_skill("poison", 1) + 30){           victim->apply_condition("insect_poison", 100);           return 1;   }   thr = me->query_skill("feixing-shu", 1);   poi = me->query_skill("poison",1);   dod = (int)victim->query_skill("force",1);   par = (int)victim->query_skill("parry",1);      my_neili = me->query("neili")/3*2;   u_neili = (int)victim->query("neili")/3*2;      skill = thr + poi + my_neili;   skill2 = dod + par + u_neili;   skill += me->query("combat_exp")/10000;   skill2 += victim->query("combat_exp")/10000;   me->add("neili", -150);   myexp=me->query("combat_exp");   urexp=victim->query("combat_exp");    if (wizardp(me))   	printf("my skill=%d  ur skill=%d\n",skill, skill2);   if ( skill > skill2+random(skill2/2) ){        if (urexp>=myexp )                me->improve_skill("feixing-shu", 100);                if(userp(victim) && urexp>=myexp ){                me->add("combat_exp", 20);        }           	message_vision(HIR"$n一不小心被$N弹出的三笑追魂散打中了身上!\n"NOR, me, victim);                        this_object()->set_temp("used", 1);        this_object()->set("value", 10);        victim->start_busy(3);        victim->apply_condition("sanxiao_poison",6);              destruct(this_object());        return 1;   } else if (skill>skill2){   	message_vision(HIY"$n突然觉得一阵冷风袭来,忙向后一跃,闪了开去。\n"NOR, me, victim);   	this_object()->set_temp("used", 1);        this_object()->set("value", 10);        me->start_busy(random(3)+1);   } else {        message_vision(HIR"$n袍袖一拂,一股内劲发出,将那三笑散尽数朝$N拂将回去。\n" NOR, me, victim);        this_object()->set_temp("used", 1);        this_object()->set("value", 10);        me->apply_condition("sanxiao_poison",4);        me->start_busy(random(3)+1);  }    destruct(this_object());  return 1;}    int do_eat(string arg){	object me = this_player();	if(!id(arg))		return notify_fail("你要吃什么?\n");	if(arg=="san" || arg=="xiaoyao san")	{		message_vision("$N仰头咽下一包" + name() + "。\n", me);		this_player()->die();		destruct(this_object());	}	return 1;}

⌨️ 快捷键说明

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