首页 » LPC源码, MUD编程LPC » LPC中的人物构建

LPC中的人物构建

10218 5

简单的说明一下LPC中人物构建的代码含义

// waiter.c   这个是个最简单的店小二的code,
#include <ansi.h>     //声明需要用到颜色,比如店小二的名字,说话的显示颜色,如果只用默认的颜色,可以不用这行
inherit NPC;    //声明继承NPC,NPC是什么意思不用讲了吧。
inherit F_VENDOR;   //声明继承vendor,就是可以对此npc进行买卖操作。
void create()
{
        set_name("店小二", ({ "waiter" }) );  //npc名字,中文和英文,也可以 ({ "huofe", "huo","fe" })来表示多个英文ID
        set("gender", "男性" );   
        set("age", 22);
        set("long","这位店小二正笑咪咪地忙著,还不时拿起挂在脖子上的抹布擦脸。/n");//人物描述,当你用l waiter的时候,返回的人物描述 
        set("combat_exp", 5);//人物经验值
      set_temp("kf_tufei",64);  //建立npc时产生的临时变量
        set("pursuer", 1);      //忘了这个是什么变量了。
set("attitude", "friendly");
        set("rank_info/respect", "小二哥");
        set("vendor_goods", ([               
                "/obj/example/wineskin" : 10,
                "/obj/example/dumpling" : 30,
              "/obj/example/chicken_leg" : 40
                ]) ); //出售的东西
        set("inquiry", ([             
                        "go" : "小店现在和各大驿站合作,新开驿站服务。十级以下免费使用。/n"
                ]));//使得ask waiter about go 生效
        setup();
}
void init()
{       // 初始化npc
        object ob;
        ::init();
        if( interactive(ob = this_player()) && !is_fighting() ) { //当进入waiter同一个场景的物件是玩家,并且waiter不在战斗中,这里也可以写成!this_object-> is_fighting()
                remove_call_out("greeting");
                call_out("greeting", 1, ob);
        }
        add_action("do_vendor_list", "list");
}
void greeting(object ob)
{
        if( !ob || environment(ob) != environment() ) return;
        switch( random(3) ) {
                case 0:
                        say( "/n店小二笑咪咪地说道:这位" + RANK_D->query_respect(ob)
    + ",欢迎光临风云的世界,希望你能玩的开心。/n");
                        break;
                case 1:
                        say( "店小二用脖子上的毛巾抹了抹手,说道:这位" + RANK_D->query_respect(ob)
                                  + ",您需要点什么?/n");
                        break;
                case 2:
                        say( "店小二说道:这位" + RANK_D->query_respect(ob)
        + ",现在没什么新消息。。/n");
                        break;
        }
}
文章评分1次,平均分5.0

本文原始地址:https://www.tiandiyoyo.com/2009/09/lpc-create-npc/
本站所有文章,除了特别注明外,均为本站原创,转载请注明出处来自www.tiandiyoyo.com

您可能还会对以下文章感兴趣:

评论前先开启评论开关:


5 Comments

  1. 子木 :

    啥玩意?都看晕乎了

  2. Leniy :

    喂喂,头文件都没了

  3. Sofa。。。。
    虽然我不玩这玩意。但觉得挺有意思的~~~

载入分页评论...