LPC语言
贡献者:不爱吃窝瓜 浏览:1709次 创建时间:2015-10-30
-
1 简介
2 LPC的函数分类
简介
LPC全称Lars Pensjǒ C,是由Lars Pensjǒ在1989年根据C语言开发的编程语言,主要是用来编写MUD游戏,使用LPC语言开发的MUD游戏被称为LPMUD。
LPC类似C语言,语法大致相同,文件扩展名也为“.c”。不过LPC 是一面向对象语言,有对象(Object),但又没有类(class)的概念。和C语言相比LPC没有main()函数,但有一个create()函数,在对象载入时自动调用以完成初始化。
LPC是文字MUD游戏的编程语言,这类MUD统称LPMUD,多为解迷型,国类所有武侠MUD和神话MUD都是LPMUD。
Lpc的程序看起来和一般的C区别不大,语法基本一样,但是Lpc和一般的语言有着根本的不同,Lpc程序是编写一个一个的"Object"。这有什么区别呢?一般的程序是在执行过程中,通常有一个明显的开始和和结束,程序从一个地方开始,然后顺序执行下去,到了结束的地方就中断了。Lpc的Object不是这样的,所谓的不同的Mud,实际上是一些不同的Lpc的Object在一个Driver的上的各种不同的表现。也就说,Lpc的Object是运行在一个Driver上的,这些Object组成了LpMud的丰富多彩的世界。
例子:如果你想在MUD中加一个地区,就在该地区目录中新建一个文件。
inherit ROOM;
void create()
{
set("short", "客店二楼");
set("long", @LONG
你正走在客店二楼的走廊上,可以听到从客房里不时地呼呼的打酣声,一阵
高过一阵。不时有睡意朦胧的旅客进进出出,到楼下的掌柜处付了钱再上来睡觉。
LONG );
set("exits", ([
"down" : "/d/city/kedian",
"enter" : "/d/city/kedian3",
]));
setup();
replace_program(ROOM);
}
然后更新这个文件并在在其它地区加上这个地点的入口就可以到达了,MUD的世界就是很多这种地点的连接。
LPC的函数分类
LPC语言的函数可分为以下4类:
⒈apply
在MUDLIB中定义的只能被游戏驱动(MUDOS)呼叫的函数,所有applies也都是lfuns。
⒉efun (external function)
外部函数(相对于MUDLIB定义的函数来说),也就是定义在游戏驱动中的函数。因为是直接定义在游戏驱动中,所以运行速度更快。
⒊lfun (local function)
本地函数,MUDLIB的object中自己定义的函数,为什么applies也属于lfun?因为这些函数内容也是你自己写的。
⒋sefun (simulated external function)
模拟外部函数,本质上是本地函数,但多数是把efun做了重写,这类函数属于MUDLIB的核心。
开放分类
参考资料
百度百科
贡献者
本词条在以下词条中被提及:
关于本词条的评论共:(0条)