当前位置: 首页>>代码示例>>C++>>正文


C++ call_out函数代码示例

本文整理汇总了C++中call_out函数的典型用法代码示例。如果您正苦于以下问题:C++ call_out函数的具体用法?C++ call_out怎么用?C++ call_out使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了call_out函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: sinking

int sinking(object ob)

{
	int i;
	int damage;
        if( ob && environment(ob) == this_object())
	{
	message_vision(HIW"$N又在流沙中陷深了一些!!", ob);
	message_vision("$N几乎在绝望中哭了出来!!\n"NOR, ob);
	damage = random(5)+1;
	i =  (int)ob->query("kee");
	ob->set("kee",(int) i - damage);
	if( environment(ob) == this_object())
	call_out("sinking",random(5)+5, ob);	
	}
	else

	return 1;
}
开发者ID:huangleon,项目名称:fy2005,代码行数:19,代码来源:quicksand8.c

示例2: cmd_darkshift

int cmd_darkshift(string str) {
    object ob;    
    int stealth, faith, intelligence, dex, stlth;

   if (!abil()) {
      notify_fail("What?\n");
      return 0;
   }
   if(this_player()->query_ghost()) return 0;
   if(this_player()->query_invis()) 
   { 
       notify_fail("You are already walking in darkness.\n");
       return 0;
   }
    stlth = (int)this_player()->query_skill("stealth");
    dex = (int)this_player()->query_stats("dexterity");
    faith = (int)this_player()->query_skill("faith");
    intelligence = (int)this_player()->query_stats("intelligence");
    stealth = ((stlth/3)+(dex)+(intelligence)+(faith/3));

    if(stealth < 15) {
        notify_fail("The demons laugh at you.\n");
        return 0;
    }
   if((int)this_player()->query_sp() < 50) {
        notify_fail("You are too tired.\n");
        return 0;
    }
   if((int)this_player()->query_mp() < 75) {
      notify_fail("You lack the magical energy needed.\n");
      return 0;
    }

    this_player()->set_invis();
    call_out("take_off", ((stlth/2)+dex+random(faith/2)), this_player());

    this_player()->add_mp(-((faith/3)+random(faith/3)));

    write("%^BLUE%^You shift into %^BOLD%^%^BLACK%^darkness%^RESET%^%^BLUE%^ and become completely undetectable!%^RESET%^\n");
    return 1;


}
开发者ID:ehershey,项目名称:pd,代码行数:43,代码来源:_darkshift.c

示例3: greeting

void greeting(object me)
{
        object basket,food;
        
        if(!me->query("food_carrier")) return ;
        if(me->query("food_carrier")+60>time())
        {
                message_vision(CYN"�����������һ�ۣ�˵��������ʹ������Ҫ�ٵ�һ�󡣡� \n"NOR,me);
                remove_call_out("make_food");
                call_out("make_food",60+me->query("food_carrier")-time(),me);
                return ;
        }
    message_vision(CYN "��ϵ����ȥ��߶Ȱ����IJ˶���ɹ���� \n"NOR,me);
        basket=present("bamboo basket",this_object());
        if(!basket) 
        {
                basket=new(__DIR__"obj/zhulan");
                basket->move(this_object());
        } 
开发者ID:mudchina,项目名称:fy4,代码行数:19,代码来源:songtian.c

示例4: heal_up

int heal_up()
{
   object master;

   if( objectp(master = query("possessed")) 
   &&   (int)master->query("mana") > 100 
   &&   (int)master->query("kee") > 100) {
     message("tell",
        HIR + name() + "告诉你:我...需...要...你...的...力...量...\n" NOR,
        master );
     master->add("mana", -50);
     master->receive_damage("sen", 50);
     ::heal_up();
     return 1;     // Always acquire power from master.
   } else {
     call_out("die", 1);
     return ::heal_up();
   } 
}
开发者ID:gongfuPanada,项目名称:xyj45,代码行数:19,代码来源:zombie.c

示例5: Poison

void Poison() {
    if (((Player = environment(this_object())) 
         && this_player() != Player) || !Player ||
      Player->query_ghost()) {
    while(remove_call_out("Poison") != -1);
    remove();
    return;
  }
  if (!Effect) {
    while (remove_call_out("poison") != -1);
    return;
  }
  if (!Player->query_linkdead()) {
    if (random(100) < POISON_MESSAGE_CHANCE) {
      tell_object(Player, "You feel the effects of a poison strike "
       "your body.\n");
     tell_room(environment(Player),
        sprintf("%s convulses with pain.\n", 
     Player->query_name()), Player);
  }
// I'd certainly like to set a player's death message here.

#ifdef DEBUG
tell_object(Player, "*** You've just been hit by poison.\n");
tell_object(Player, 
  sprintf("*** Dur: %d, Dam: %d, Int: %d, Num: %d.\n",
    Duration, Damage, Interval, Number)); 
#endif

  Player->receive_damage((Damage / 2) + random(Damage / 2) + 1);
  if (!Player || Player->query_ghost()) {
    if (this_object()) remove();
    return;
  }
  Duration -= 1;
  }
  if (Duration > 0) call_out("Poison", Interval);
  else {
    tell_object(Player, "You overcome the effects of a poison.\n");
    remove();
  }
}
开发者ID:ClockworkSoul,项目名称:MortalRemains,代码行数:42,代码来源:poison.c

示例6: cast

int cast(object me)
{
	int howlong;
	
	if((int)me->query_skill("spells") < 100)
		return notify_fail("你还没学会隐身法。。。\n");

	if( (int)me->query("mana") < 2*(int)me->query_skill("spells"))
		return notify_fail("你的法力不够了!\n");

	if( (int)me->query("sen") < 50 )
		return notify_fail("你的精神无法集中!\n");

	if( (int)me->query("env/invisibility") )
		return notify_fail("你已经在隐身中了。\n");

  if (me->query_temp("yinshen_busy")) return notify_fail("你刚隐身过,先休息一会儿吧。\n");
	message_vision("$N喃喃地念了几句咒语。\n", me);

	if( random(me->query("max_mana")) < 200 ) {
        me->add("mana",-(int)me->query_skill("spells",1));
		me->receive_damage("sen",10);
		message("vision", "但是什么也没有发生。\n", environment(me));
		return 5+random(5);
	}

    me->add("mana", -2*(int)me->query_skill("spells",1));
	me->receive_damage("sen", 20);

	howlong = 15 + random((me->query_skill("spells") -100));
	if (!me->query("env/invisibility"))
		call_out("free", howlong, me, howlong);
	me->set_temp("yinshentime", howlong+(int)me->query_temp("yinshentime"));

	me->set("env/invisibility", 1);
	me->set_temp("no_heal_up/yinshen",1);
	
  me->set_temp("yinshen_busy",1);
	message_vision(HIW"\n只见一道白光闪过,$N踪迹皆无。\n\n"NOR, me);
	
	return 5+random(5);
}
开发者ID:cosin,项目名称:XYJ,代码行数:42,代码来源:yinshen.c

示例7: extra_create

void extra_create()
{
    object ob;

    set_name(  "Chester" );
    add_alias( "chester" );
    add_alias( "uncle chester" );
    add_alias( "uncle" );
    add_alias( "master of arms" );
    add_alias( "hill wizard master of arms" );
    set_short( "Uncle Chester, Hill Wizard Master of Arms" );
    set_long(
        "Remember that jovial old man who helps teach young boys "
        "how to properly use and care for their weapons on every "
        "TV show ever?  Well, that's Uncle Chester.  He's a kind "
        "middle aged man with time to spare.  He also happens to "
        "know a whole lot about weaponry!  And by that, I mean "
        "even moreso than your average hillbilly."
    );

    set_race( "human" );
    set_gender( "male" );
    set_alignment( 500 );

    set_stat( "str",  800 );
    set_stat( "int",  250 );
    set_stat( "wil", 1000 );
    set_stat( "con", 1000 );
    set_stat( "dex",  400 );
    set_stat( "chr",  250 );
    set_skill( "dodge", 100 );
    set_proficiency( "hands", 50 );

    set_max_fatigue( 25000 );
    set_natural_ac ( 10 );
    set_percent_bonus_exp( -25 );

    ob = clone_object( "/zone/present/hillbilly/obj/armor/overalls.c" );
    move_object( ob, THISO );

    call_out( "gear_up", 1 );
}
开发者ID:smokeless,项目名称:eotl,代码行数:42,代码来源:chester.c

示例8: do_clean

int do_clean(string arg)
{	int i;
	object ob=this_object();
	object me=this_player();
	object obj;
        if(!arg || arg != "jingji")
                return notify_fail("��Ҫ��ʲô��\n");
	
        if(query("clean"))
                return notify_fail("��Χ�Ѿ�û�о����ˡ�\n");

	if((int)me->query("kee") <50)
                return notify_fail("��̫���ˣ�ЪЪ�ɣ�\n");

	if(!(obj = me->query_temp("weapon")) ){
		message_vision("$N������ȥ���Ǿ�����ȴ����������Ѫ��\n", me);
		return 1;
	} else {
		message_vision("$N��������$n��С�ĵ�ȥ�����ǶѶѾ�����\n", me, obj);
		me->receive_damage("kee", 50);
		i=(int)me->query_str();
		ob->set("coe",(int)ob->query("coe") + i );
		
		if( i < 30 ){	
			tell_room(environment(me), "���ֻ������֦С�̡�\n"); 
		}
		else if (i < 50 ) { 
			tell_room(environment(me), "�������һƬ������\n");
		}
		else if (i < 100 ) {
			tell_room(environment(me), "ֻ���������ƵIJ�ס���ˡ�\n");
                }
		else tell_room(environment(me), "ֻ�������糱ˮ���˺�\n");
	}
	
	if( (int)ob->query("coe") > 1000 ) {
		tell_room(environment(me), "�������Ƶ����ԣ�����һ����·��\n\n");
		me->set_temp("obstacle/jingji/clean_8", 1);
		call_out("done", 1);
	}
	return 1;
}
开发者ID:cosin,项目名称:XYJ,代码行数:42,代码来源:jingji8.c

示例9: do_clean

int do_clean(string arg)
{   int i;
   object ob=this_object();
   object me=this_player();
   object obj;
        if(!arg || arg != "jingji")
                return notify_fail("你要干什么?\n");
   
        if(query("clean"))
                return notify_fail("周围已经没有荆棘了。\n");

   if((int)me->query("kee") <50)
                return notify_fail("你太累了,歇歇吧!\n");

   if(!(obj = me->query_temp("weapon")) ){
     message_vision("$N想用手去扯那荆棘,却扎了满手鲜血!\n", me);
     return 1;
   } else {
     message_vision("$N挥舞手中$n,小心的去拨开那堆堆荆棘。\n", me, obj);
     me->receive_damage("kee", 50);
     i=(int)me->query_str();
     ob->set("coe",(int)ob->query("coe") + i );
     
     if( i < 30 ){   
        tell_room(environment(me), "结果只拨开几枝小刺。\n"); 
     }
     else if (i < 50 ) { 
        tell_room(environment(me), "结果拨倒一片荆棘。\n");
     }
     else if (i < 100 ) {
        tell_room(environment(me), "只见荆棘被推的不住后退。\n");
                }
     else tell_room(environment(me), "只见荆棘如潮水般退后。\n");
   }
   
   if( (int)ob->query("coe") > 1000 ) {
     tell_room(environment(me), "荆棘被推到两旁,闪出一条道路。\n\n");
     me->set_temp("obstacle/jingji/clean_3", 1);
     call_out("done", 1);
   }
   return 1;
}
开发者ID:gongfuPanada,项目名称:xyj45,代码行数:42,代码来源:jingji3.c

示例10: create

void create()
{
    set ("short", "石窟");
    set ("long", @LONG
         莫高窟始建於符秦元二年,后历代均有扩建,有大约四百个石窟。
         这里是莫高窟第一层的入口。
         LONG);

    set("exits", ([
                      "eastdown" : __DIR__"drukou",
                      "enter" : __DIR__"dtongdao",
                  ]));
    set("cost", 2);
    set("objects", ([
                        "/d/xingxiu/npc/yinli" : 1
                    ]));
    set("no_clean_up", 1);
    setup();
    call_out("reset_flags", 60);
}
开发者ID:heypnus,项目名称:xkx2001,代码行数:20,代码来源:shiku.c

示例11: do_open

int do_open(string arg)
{
        object obj;
        object me;
        if(!arg || arg=="")
        {
                write("你要打开什么?\n");
                return 1;
        }
        if( arg == "屏风" || arg == "ping feng" || arg == "pingfeng")
        {
        me = this_player();
        message_vision("$N信手按在屏风上,屏风微微一动,过得片刻,屏风
竟然向左移开来,露出一道暗门。 \n", me);
        if( !query("exits/south") ) {
        set("exits/south", __DIR__"secret");
        call_out("close_path", 6);
        }
        return 1;
        }
开发者ID:huangleon,项目名称:fy2005,代码行数:20,代码来源:feng.c

示例12: reset

void reset() {
	int dayTime;
	mixed *local;
	object xiaohe;
	
	:: reset();
	if (xiaohe=present("xiao he",this_object()))
	if (!xiaohe->is_fighting()) {
		destruct(xiaohe);
		set("xiaohe",1);
		return;
	}
	
	local = NATURE_D->get_current_time();
	dayTime = local[5];
	if(dayTime > 0 && dayTime < 360) {
		call_out("do_reveal",2);
	}
	return;
}
开发者ID:huangleon,项目名称:fy2005,代码行数:20,代码来源:garden3.c

示例13: do_search

int do_search(string arg)
{
   object me;
   int llvl;

   me = this_player();
   llvl = (int)me->query_kar();
   message_vision("$N伸手在火热的石壁上摸索着。\n",me);
   if (random(100) < llvl) { 
      tell_object(me, "你的手在石壁上摸到了一个突出物,你顺手往上一按。 \n");
      message_vision("只听一阵绞索的声音,你头上裂开了一个洞口。 \n", me);
      if( !query("exits/up") ) {
         set("exits/up", __DIR__"rongdong1");
         call_out("close_path", 1);
      }
   }
   else
      tell_object(me, "你什么都没找到。\n");
   return 1;   
}
开发者ID:mudchina,项目名称:fy2,代码行数:20,代码来源:migong.c

示例14: apply_effect

void apply_effect(object target, int duration,int amount)
{
	int gin,kee,sen;
	message_vision(HIW"一片浅色霞云在$N头顶收聚,一点点纳进$N天门...\n"NOR,target);

	gin = (int)target->query("max_gin");
	target->set("max_gin",gin+amount);
	target->set("eff_gin",target->query("eff_gin")+amount);

	kee = (int)target->query("max_kee");
	target->set("max_kee",kee+amount);
	target->set("eff_kee",target->query("eff_kee")+amount);

	sen = (int)target->query("max_sen");
	target->set("max_sen",sen+amount);
	target->set("eff_sen",target->query("eff_sen")+amount);

	call_out("warning",duration-180, target,amount);
	return;
}
开发者ID:huangleon,项目名称:fy2005,代码行数:20,代码来源:buffup1.c

示例15: end_pfm

void end_pfm(object me, int enhance,int damage,object weapon)
{
    if (me->query_temp("wzg-powerup") &&
        me->query_temp("weapon")==weapon) {
          call_out("end_pfm",2,me,enhance,damage,weapon);
          return;
    }
    if (me->query_temp("wzg_pfm_cleared")) return;

    if (weapon) {
      weapon->set("use_apply_skill",weapon->query_temp("original/use_apply_skill"));
      weapon->set("apply/skill_type",weapon->query_temp("original/skill_type"));
      weapon->set("skill_type",weapon->query_temp("original/skill_type2"));
    }
    me->add_temp("apply/attack",-enhance);
    me->add_temp("apply/damage",-damage);
    me->delete_temp("wzg-powerup");
    me->set_temp("wzg_pfm_cleared",1); // make sure only remove effect once.
    me->reset_action();
}
开发者ID:mudchina,项目名称:sjsh,代码行数:20,代码来源:staff.c


注:本文中的call_out函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。