Lua开发者运行: 4409天

游戏任务策划案以及Lua实现

作者:LuaStudio 发布于:2015-12-28 9:32 Monday 分类:心得体会

一 任务简要说明:
老道炼药,需要一个天使之心,在天使加百列身上有半颗,在路西法身上有半颗。老道交给你一个玉符,告诉你在法坛上使用可以帮你打开通往两处的通道。并告诉你两处的坐标A、B。(不在法坛上使用玉符无效)
A坐标通往加百列,B通道通往路西法。
你站在法坛上,使用玉符进入光明前殿(或者黑暗大殿,进入先后次序不论)。
进入光明前殿遇到加百列,加百列异常高傲,称你为异教徒,你回敬他是长着鸡翅膀的不男不女的鸟人,对骂之后开始战斗。
加百列战斗策略:自身20%的几率使用光明护盾,持续5秒,每次光明护盾消失后都有20%的几率再次使用。
当自身血量低于最大血量有10%的几率使用治愈术。
当自身血量低于最大血量10%有10%的几率使用复活术,血量回满,复活术最多可使用三次。
当自身血量低于最大血量1%,且三次复活术不满则100%使用复活术。
当对方血量是当前自身血量的2倍,有10%的几率使用大预言术,大预言术50%几率为时间凝固,对方不可操作,时间5秒,50%的几率为时间逆流,对方所有属性减半,时间5秒
加百列死亡后100%获得半颗光明天使之心,获得天使之心后,你自动返回法坛前,法坛前坐标为C。
进入黑暗神殿,路西法只说了声战斗吧,即开始战斗。
路西法战斗策略:当自身血量分别为最大血量的90%,70%, 50%, 30%, 10%时开始召唤生物,第一批为三个石像鬼,第二批为三个黑暗巫师,第三批为四个大恶魔,第四批为四个骨龙,第五批为五个深渊魔王。
当每死一只召唤生物,有10%的几率分别使用虚弱,中毒,恐惧,失明,四个魔法中的一个。
若召唤生物没有全部死亡,而路西法血量少于5%的时候处于无敌状态,物理和魔法攻击免疫。
杀死路西法100%获得半颗黑暗天使之心,获得后自动返回法坛前台。
你将两个半颗天使之心带到老道处,老道要你用狗血去融合了这两个半颗天使之心,使之变成一颗完整的天使之心。
你去找了半盆黑狗血,将两颗天使之心扔进去,一道光闪过,盆里出现课天使之心,你拿完整的天使之心又去交给老道,老道很满意,给了你一枚人参果,你临走好奇问老道要天使之心炼什么药,老道告诉你,没啥用,就是看鸟人脸上道貌岸然,一肚子男盗女娼的样子不爽,正好最近有点闲,拿天使之心不过是想炼一份给自己养的牛除牛虱的药而已。你不仅为老道的恶搞而汗颜。
特别说明:
1、该任务中任何死亡都做正常死亡处理,死亡后需要重新从法坛进入目的地
2、当每拿到半颗天使之心,则该地图不可再次进入,输入坐标无效
3、当两个半颗天使之心都已获得,则玉符自动消失
4、两个场景地图不保存信息,即玩家在两个场景地图中的任一个下线后,再次上线则回到法坛前
5、该任务不可重复,每个用户只能完成一次
6、该任务接受后需要在任务日志中记录,用户可以随时查询,任务完成后清除任务日志
7、用户获得的奖励需要做log,方便查询
要求:
1、写出任务基本流程,并附流程图
2、按照任务编写一份伪脚本
其他说明:
1、所有所需的关键词、变量、以及函数由答题者自行定义,并对所定义的词、变量、函数等作出解释说明
2、编写格式可以按自己的方式编写,但需作出必要的说明
3、在战斗脚本部分编写,可任一选择一个战斗进行编写,也可以全部编写

“老道炼药”任务策划案(初稿)
 任务基本流程
领取任务:1.玩家去道观(21104)找老道对话,获得玉符,任务开始。
做任务:  2.玩家去道观所在的法坛。
          3.玩家在法坛使用玉符,打开通道,输入A坐标,来到光明大殿杀死加百列,获得半颗天使之心。
          4.玩家在法坛使用玉符,打开通道,输入B坐标,来到黑暗大殿杀死路西法,获得半颗天使之心。
          5.玩家带着2个半颗天使之心找老道对话。
          6.玩家奉命炼制天使之心,去找材料黑狗血。
还任务:  7.玩家带着天使之心找老道对话,获得人参果,任务完成。

任务流程图:

 加百列战斗脚本流程图

AI决策流程图:

 脚本相关
1.函数定义:
GetMissionFlag (PlayerIDMissionID)      ---读取玩家某任务的任务完成标识
GetMissionSpace ( )                   ---读取玩家当前已接任务总数,
---未达上限返回TURE,否则返回FALSE
GetMissionName (MissionFlag)           ---读取指定任务的任务变量名
GetMissionValue(MissionFlag)           ---读取指定任务的任务变量名对应的变量值
TestMissionFlag (Flag)                 ---检测玩家任务完成标识表的状态,有变化则返回---对应任务的任务编号,否则返回FALSE
GetMissionText (MissionIDMissionFlag) ---根据任务编号和任务完成标识读取任务日志说明
GetPlayerLevel (PlayerID)             ---读取玩家当前等级
GetPlayerName (PlayerID)             ---读取玩家游戏ID的呢称
GetItem (ItemID)                     ---玩家获得指定物品
LoseItem (ItemID)                   ---玩家失去指定物品
GetMissionGain (MissionID)           ---玩家获得某任务的任务奖励
LookforItem (ItemIDItemNumber)   ---追踪玩家身上携带的某物品,返回TUREFALSE
PlayAnim (NPC/PlayerAnimID)       ---播放指定的精灵动画
NPCtalk ( )                           ---显示NPC当前对白
Playertalk ( )                          ---显示玩家当前对白
ERROR( )                           ---提示错误的输入信息
GetPlayerHP (PlayerID)                 ---读取玩家当前HP
GetNPCHP (NPCID)                   ---读取NPC当前HP
GetPlayerDroidX ( )                   ---读取玩家当前X坐标
GetPlayerDroidY ( )                   ---读取玩家当前Y坐标
GetPlayerDroidDir ( )                  ---读取玩家当前面向
GetPlayerToNPCDist ( )                ---读取玩家距NPC的当前距离
GetNPCDroidX ( )                    ---读取NPC当前X坐标
GetNPCDroidY ( )                    ---读取NPC当前Y坐标
GetNPCDroidDir ( )                   ---读取NPC当前面向
MoveNPCDroid(Dir Dist,Speed)   ---根据给定的面向,距离和速度移动NPC
GetStateTime (FreqtTime)             ---计时器根据计数循环返回FALSE1
UseSkill (SkillID)                     ---使用指定的技能  
OverSkill (SkillID)                   ---取消指定的技能
ViewPepoleInRegional (radius)          ---查看区域radius内目标,返回TURE或者FALSE
GetSystemTime ( )                   ---读取当前系统时间,单位秒
GetRanInRange (MinMax )          ---获得[Min+1Max-Min+1]范围内的任意整数值
ChangeScencetofrom           ---from场景切换到to场景
GetScenceDriod (DroidX, DroidY)      ---读取玩家输入的XY坐标
2. 附相关NPC对白配置文件:NPCdb.text(对白,文件后缀名不知道是什么类型的)
-------------------------------------------------NPC对白编号---------------------------------------------------
//
Dn660=“你输入的是错误的坐标,请重新输入。”
//
Db1000 =“XXX,你能力不够,还是去外面磨炼吧。”
Db1001 =XXX,贫道有件事想请你帮忙。”
Db1002 =“道长,啥事?”
Db1003 =“是这样,我炼药需要一个叫做天使之心的材料,这个材料在加百列身上有半颗,在路西法身上有半颗,你能帮我去取来吗?”
Db1004 =“没问题。”
Db1005 =XXX,快去做你的事情吧。”
Db1006 =XXX,事情办的怎样了?”
Db1007 =“抱歉,道长,我决定放弃了。”
Db1008 =“办好了。”
Db1009 = “太好了,XXX你真是少年英豪,贫道一直很看好你,恩,这个人参果送给你,希望你不要辜负贫道一番心意。”
Db1010 =“道长你太客气了。哦,对了,顺便问下,道长你准备炼什么灵丹妙药呀?”
Db1011 =“没啥用,就是看那鸟人表面道貌岸然,其实一肚子男盗女娼的样子不爽,我正好最近有点闲,拿天使之心不过是想炼一份给自己养的牛除牛虱的药而已。”
Db1012 =“XXX,贫道要的是完整的天使之心,你用狗血去融合了这两个半颗天使之心,使之变成一颗完整的天使之心,然后再找我吧。”
Db1013 =XXX,不要和贫道开玩笑了,快点去完成吧。”
Db1014 =XXX,很遗憾你放弃了。”
Db1015 =XXX,很高兴见到你,上次多谢你帮忙。”
Db1016 =“嘎嘎,哪来的异教徒,还不向仁慈的主忏悔?”
Db1017 =“我呸!你丫的狂什么,不过是一个长着鸡翅膀的不男不女的鸟人。”
Db1018 =“气死我也,主会原谅我的,受死吧!”
Db1019 =“嘎嘎,看你往哪跑!
Db1020 =“嘎嘎
Db1021 =“别得意了,战斗才刚刚开始。”
Db1022 =“嘎嘎,很失望吧。”
Db1023 =“该死,不可能的事情,我居然被打败了!
Db1024 =“可恶!
Db1025 =“难以置信,我会输给一个卑贱的人类么?
Db1026 =“别妄想反抗了,快来乖乖受死吧!
Db1027 =“还在挣扎,也好,我就来导演一场猫戏老鼠的精彩演出,嘎嘎!
Db1028 =“觉悟吧,你死定了。”
//
//

3.任务脚本:Mission.lua
--------------------------------------------------导入API-----------------------------------------------------
int   HAPI_GetMissionFlag(lua_state  *pluastate)                     
int   HAPI_GetMissionName(lua_state       *pluastate)           
int   HAPI_GetMissionValue(lua_state  *pluastate)         
int  HAPI_TestMissionFlag(lua_state         *pluastate)                 
int   HAPI_GetMissionText(lua_state   *pluastate)
-----------------------------------------------脚本主体--------------------------------------------------------
Func_Mission ( )
       //
       ;
       ;
       //
       If(TestMissionFlag ( ))         then
              If(TestMissionFlag ( ) = = 01)     then               ---记录新任务信息
                     Flag= TestMissionFlag ( );
                     Mission={ };
                     Mission[Flag]={GetMissionName(Flag)= GetMissionValue (Flag)};
              Else
                     Mission={ };
       Mission[TestMissionFlag( )]=nil;     ---删除指定任务信息
End
       Elseif (LookforMissionText ( ))   then                 ---查询指定任务日志
              Print(GetMissionTextMissionID,MissionFlag);
       Elseif (LookforMissionTable ( ) )   then              ---查询玩家当前任务列表信息
              Print(Mission);
       End
End
      
4.老道(npc47)的脚本:npc47.lua   
     
--------------------------------------------------导入API-----------------------------------------------------
int   HAPI_GetMissionFlag(lua_state  *pluastate)            
int   HAPI_GetMissionSpace(lua_state       *pluastate)                  
int   HAPI_GetPlayerLevel(lua_state   *pluastate)            
int   HAPI_GetPlayerName(lua_state  *pluastate)  
int   HAPI_GetItem(lua_state      *pluastate)              
int   HAPI_GetMissionGain(lua_state  *pluastate)         
int   HAPI_LookforItem(lua_state       *pluastate)   
int   HAPI_PlayAnim(lua_state   *pluastate)      
int   HAPI_NPCtalk(lua_state      *pluastate )                          
int   HAPI_Playertalk(lua_state   *pluastate)  
-------------------------------------------------常量声明--------------------------------------------------------
Level=50
------------------------------------------------对话脚本--------------------------------------------------------
Func_npc47 ( )
       #define  XXX   GetPlayerName ( PlayerID) ;
       If(GetPlayerLevel (PlayerID)<Level)         then
              NPCtalk(Db1000)
       End
       MissionFlag=GetMissionFlag (PlayerIDMission112)   --读取玩家该任务的完成标识
       If(MissionFlag= =00)   then                        ---玩家没有领取过该任务                  If (GetMissionSpace( ))            then                    ---玩家还可以领取任务
                     NPCtalk (Db1001);
                     Playertalk (Db1002);
                     NPCtalk (Db1003);
                     Playertalk (Db1004);
                     GetItemItem250;                      --获得道具玉符
              Else                                        ---玩家领取任务已达上限
                     NPCtalk(Db1005);
Else if(MissionFlag= =01)    then
              NPCtalk(Db1006Db1007Db1008);
              If(Answer= = Db1007)        then
       MissionFlag=10;
              Elseif (LookforItem (Item3681))     then     ---察看玩家身上是否携带天使之心
                            NPCtalk(Db1009);
                            Playertalk(Db1010);
                            NPCtalkDb1011
                            GetMissionGain(Mission112) ;          --获得任务奖励(人参果)
              Elseif ((LookforItem (Item366,1))    then   
---查看玩家身上是否携带2个半颗天使之心
                     If((LookforItem (Item3671))   then
                            NPCtalk(Db1012);
                     Else
                            NPCtalk(Db1013);
                     End
              End
       Elseif (MissionFlag= =10)    then
       NPCtalk (Db1014);
Else if (MissionFlag==11)    then
       NPCtalk (Db1015);
End
End
5.加百列(npc112)的脚本:npc112.lua
--------------------------------------------------导入API-----------------------------------------------------
int   HAPI_NPCtalk(lua_state      *pluastate )                          
int   HAPI_Playertalk(lua_state   *pluastate )  
int   HAPI_ERROR(lua_state      *pluastate )                     
int   HAPI_GetPlayerHP(lua_state      *pluastate)                 
int   HAPI_GetNPCHP(lua_state  *pluastate)                  
int   HAPI_GetPlayerDroidX(lua_state       *pluastate )                  
int   HAPI_GetPlayerDroidY(lua_state       *pluastate)                  
int   HAPI_GetPlayerDroidDir(lua_state     *pluastate)
int   HAPI_GetPlayerToNPCDist(lua_state  *pluastate)               
int   HAPI_GetNPCDroidX(lua_state  *pluastate)                    
int   HAPI_GetNPCDroidY(lua_state  *pluastate )                    
int   HAPI_GetNPCDroidDir(lua_state       *pluastate)                  
int   HAPI_MoveNPCDroid(lua_state  *pluastate)      
int   HAPI_GetSystemTime(lua_state  *pluastate )                  
int   HAPI_GetRanInRange(lua_state  *pluastate)
int   HAPI_GetStateTime(lua_state     *pluastate)
int   HAPI_UseSkill(lua_state  *pluastate)
int   HAPI_ViewPlayerInRegional(lua_state  *pluastate)
-------------------------------------------------常量声明--------------------------------------------------------
//    Direction   //
NORTH=0
SOUTH=2
EAST=4
WEST=6
-------------------------------------------------------------------------------------------------------------------
OriginalX=12;               --加百列原来的X坐标
OriginalY=20;               ---加百列原来的Y坐标
Speed=10                 ---加百列的移动速度
Radius=20;                  ---加白列可以察觉目标的区域半径
HP=5000                  ---加百列的生命满值
Rarity=0;                    ---指定的几率值
FreqAttack=1;                ---加百列的攻击频率(s
AttackDist=4;              ---加百列的有效攻击距离
OrdinaryAttack=1;            ---普通攻击
BrightShield=121;             ---光明护盾
BrightState =0;               ---光明护盾状态
CD=5;                      ---光明状态有效持续时间(s)
Therapy=122;                ---治疗术
Resurrection=123;             ---复活术
Cout=0;                     ---加百列复活术已使用次数
BigPrediction_1=124;          ---大预言术之时间凝固
BigPrediction_2=125          ---大预言术之时间倒流
-----------------------------------------------定义函数-------------------------------------------------------
// ---获得需要面对玩家的方向
Function         GetPlayerFaceDir( )               
       NPCDroidX=GetNPCDroidX ( );
       NPCDroidY=GetNPCDroidY ( );
       PlayerDroidX=GetNPCDroidX ( );
       PlayerDroidY=GetNPCDroidY ( );
       If(NPCDroidX < PlayerDroidX)  then
              Return     EAST;
       Else
              Retuun    WEST;
       End
       If(NPCDroidY < PlayerDroidY ) then
              Return     SOUTH;
       Else
              Return     NORTH;
       End
       Return     NORTH;                ---
End
//  ---获得返回原处需要面对的方向
Function         GetMoveBackDir( )
       NPCDroidX=GetNPCDroidX ( );
       NPCDroidY=GetNPCDroidY ( );
       If(NPCDroidX < OriginalX)              then
              Return     EAST;
       Elseif (NPCDroidY < OriginalY )              then
              Return     SOUTH;
       Elseif (NPCDroidX > OriginalX)        then
              Return     WEST;
       Elseif (NPCDroidY >OriginalY)         then
              Return     NORTH;
       Elsereturn      FALSE;
       End
End
//  ---光明护盾的AI策略
Function         BrightShield( )            ---
       If(BrightState = = 0)    then
              Rarity=GetRanInRange (0, 9);
              If(GetRanInRange (0, 4) = = 1)   then
                     AI= BrightShield;
                     BrightState= 1;
                     T0= GetSystemTime ( );
                     NPCtalk(Db1020);
              ElseAI = FALSE;
              End
       ElseT=GetSystemTime ( ) ;
              AI=FALSE;
If (tT– t0 = = CD)  then
                     BrightState=0;
              End
       ReturnAI;
End
//   ---复活术的AI策略
Function         Resurrection( )         
       NPCHP=GetNPCHP( NPC112);
       If(NPCHP<HP/100)     then
              If(Cout<3)     then
                     AI=Resurrection;
                     If(Cout = = 0)              then
NPCtalk (Db1021);
                    Else NPCtalk(Db1022);
                     End
              ElseAI=FALSE;
NPCtalk (Db1023);
              End
       Elseif (NPCHP<HP/10)              then
              Rarity=GetRanInrange(0,9);
              If(Cout<3)     then
                     If(Rarity = = 1)     then
                            AI=Resurrection;
                            If(Cout = = 0)              then
NPCtalk (Db1021);
                           Else NPCtalk(Db1022);
                            End
Else AI= FALSE;
If (Rarity = = 10)   then
NPCtalk (Db1024);      
              End
       End
Else AI= FALSE;
If (Rarity = = 2)     then
NPCtalk (Db1025);      
End
              End
Else AI= FALSE;
End
       ReturnAI;
End
//   ---治疗术的AI策略
Function         Therapy( )
       NPCHP=GetNPCHP( NPC112);
       Rarity=GetRanInrange(0,9);
       If(NPCHP<HP)    then
              If(Rarity = = 1)     then
                     AI=Therapy;
                     NPCtalk(Db1021);
Else AI= FALSE;
If (Rarity = = 10)   then
NPCtalk (Db1024);      
End
              End
Else AI= FALSE;
If (Rarity = = 2)     then
NPCtalk (Db1026);      
Else if (Rarity = = 3)     then
NPCtalk (Db1027);
End
       End
       ReturnAI;
End
//  ---大预言术的AI策略
Function        BigPrediection( )
       NPCHP=GetNPCHP( NPC112);
       PlayerHP=GetPlayerHP ( );
       If(NPCHP<=PlayerHP/2)     then
              Rarity=GetRanInrange(0,9);
              If(Rarity = =1)      then
NPCtalk (Db1028);
                     If (GetRanInrange (0,1)= = 1)             then
                            AI= BigPrediection_1;
                     Else AI= BigPrediection_2;
                     End
              Else AI=FALSE;
                     NPCtalk(Db1024);
       End
      Return AI;
End
-----------------------------------------------脚本主体-------------------------------------------------------
Func_npc112 ()
------------------------------------------------对话脚本--------------------------------------------------------
              NPCtalk (Db1016);
              Playertalk(Db1017);
              NPCtalk(Db1018);
      
------------------------------------------------战斗脚本--------------------------------------------------------
//     主循环      //                        
       While(GetNPCHP (npc112))        do         ---加百列未死亡时
              If(ViewPepoleInRegional (Radius))            then      ---发现目标
                     While(GetPlayerHP())  do         ---玩家未死亡
                            NPCtalk(Db1019);     
Dir= GetPlayerFaceDir ( );         ---获得需要面对玩家的方向
                            Dist=RanInRange (3, 20);          ---随机获得加百列的移动距离
While (Dist)   do
                                   If(BrightShield ( ))              then   
                                          Dir=GetPlayerFaceDir ( );  
              UseSkill(BrightShield);   
Else if (Resurrection( ))              then   
                              Dir= GetPlayerFaceDir ( );  
UseSkill (Resurrection);  
       Else if (Therapy ())              then   
              Dir= GetPlayerFaceDir( );  
                                          UseSkill(Therapy);   
       Else if (BigPrediection( ))    then
              Dir= GetPlayerFaceDir( );  
              UseSkill(BigPrediection ( ));
       Else if (GetPlayerToNPCDist<=AttackDist)        then
              Dir= GetPlayerFaceDir( );  
              UseSkill(OrdinaryAttack);
       End
       MoveNPCDroid (Dir, Dist,Speed);   ---移动加百列
       If (ViewPepoleInRegional(Radius))     then
Dist=Dist-1;
                                   ElseDist=0;       ---失去目标
                                   End
End              
End                      ---玩家死亡或下线
End                        ---玩家离开加百列警觉区域
Dir=GetMoveBackDir;
If (Dir)         then
      MoveNPCDroid (Dir, Dist, Speed);
End                           
End                             ---加百列被玩家杀死
      GetItem (Item366);                ---掉落半颗天使之心
End
6.路西法(npc140)的脚本: npc150.lua
()
7.场景脚本:(道观)cj21.lua;(光明大殿)cj42.lua;(黑暗大殿)cj60.lua
(道观)cj21.lua
----------------------------------------导入API函数---------------------------------------------------------
Int   HAPI_ChangeScencelua_state *pluastate
//
//
Int   HAPI_GetScenceDriod(lua_state *pluastate)
----------------------------------------------------脚本主体----------------------------------------------------
Func_ cj21 ( )
       //
       ;
       ;
       //
       If(GetScenceDriod (X, Y) = “20,211”)              then     ---输入坐标A
              ChangeScence(cj42, cj21);               ---传送到光明大殿
       Elseif (GetScenceDriod (X, Y) =”202,11”)         then  ---输入坐标B
              ChangeScence(cj60, cj21);               ---传送到黑暗大殿
       Elsereturn ERROR (Db660);                 ---如果输入错误信息,返回提示
       End
End
(光明大殿)Cj42.lua:
----------------------------------------导入API函数---------------------------------------------------------
Int   HAPI_ChangeScencelua_state *pluastate
int   HAPI_GetPlayerHP(lua_state      *pluastate)   
int   HAPI_LookforItem(lua_state       *pluastate)
//
//
----------------------------------------------------脚本主体----------------------------------------------------
Func_ cj42 ( )
       //
       ;
       ;
       //
       If(GetPlayerHP () = =0)              then      ---如果玩家死亡
              ChangeScence(cj21, cj42);       ---被传送回道观里的法坛
              PlayerDroidX=44;             ---法坛坐标C44 148
              PlayerDroidY=148;            
       End
       If(LookforItem (Item366, 1))             then    ---如果杀死加百列获得半颗天使之心
              ChangeScence(cj21, cj42);
       End
End
(黑暗大殿)Cj60.lua:
----------------------------------------导入API函数---------------------------------------------------------
Int   HAPI_ChangeScencelua_state *pluastate
int   HAPI_GetPlayerHP(lua_state      *pluastate)   
int   HAPI_LookforItem(lua_state       *pluastate)
//
//
----------------------------------------------------脚本主体----------------------------------------------------
Func_ cj60 ( )
       //
       ;
       ;
       //
       If(GetPlayerHP () = =0)              then         ---如果玩家死亡
              ChangeScence(cj21, cj60);          ---被传送回道观里的法坛
              PlayerDroidX=44;                 ---法坛坐标C44 148
              PlayerDroidY=148;            
       End
       If(LookforItem (Item367, 1))             then       ---如果杀死路西法获得半颗天使之心
              ChangeScence(cj21, cj60);
       End
End
7.物品脚本:玉符(Item250),半颗天使之心(Item366),半颗天使之心(Item367,天使之心(Item368),人参果(Item321
(玉符)Item250.lua:
----------------------------------------导入API函数---------------------------------------------------------
int   HAPI_LookforItem(lua_state       *pluastate)   
int   HAPI_LoseItem(lua_state     *pluastate)   
//
//
----------------------------------------------------脚本主体----------------------------------------------------
Func_ Item250 ( )
       //
       ;
       ;
       //
       If(LookforItem (Item366, 1))             then    ---查看玩家身上是否携带有2个半颗天使之心
              If(LookforItem (Item367, 1))
              LoseItem(Item250);               ---玉符消失
       End
End

热烈欢迎各位留言,本人会虚心听取各位意见!