admin 发表于 2025-8-12 15:40:51

【千年服务端】情侣任务之《司仪》,核心HELP文件公布!

情侣任务之《司仪》,核心HELP文件公布! 这一段必须男女两个玩家配合才能完成。
如果没有男女两个人登记完,是不能启动公告的!!

需要增加的物品有
成人证明、新郎证书、新娘证书
//----====help部分ql司仪.txt====------

<trade>
<title>司仪</title>
<image name=z42 value=126>
<text>
祝福你们这对新人。
</text>
<command send='close'>关闭</command>
<command send="qldengji">情侣登记</command>
<command send="qlyishi">邀请好友参加婚礼</command>
</trade>


//----====脚本主体部分===-------
unit 司仪;
interface
functionGetToken (aStr, aToken, aSep : String) : String;
functionCompareStr (aStr1, aStr2 : String) : Boolean;
functioncallfunc (aText: string): string;
procedure print (aText: string);
functionRandom (aScope: integer): integer;
functionLength (aText: string): integer;
procedure Inc (aInt: integer);
procedure Dec (aInt: integer);
functionStrToInt (astr: string): integer;
functionIntToStr (aInt: integer): string;
procedure exit;
procedure OnGetResult (aStr : String);
procedure OnLeftClick (aStr : String);
implementation
procedure OnLeftClick (aStr : String);
var
   Str : String;
   Race : Integer;
begin
   Str := callfunc ('getsenderrace');
   Race := StrToInt (Str);
   if Race = 1 then begin
      print ('showwindow .\help\ql司仪.txt 1');//弹出help文件对话框
      exit;
   end;
end;
procedure OnGetResult (aStr : String);
var
   Str, Name : String;
   nnName, vvName : String = '无名氏';
begin
   if aStr = 'close' then begin
      exit;
   end;
   //下面是输入双方的姓名的
   if aStr = 'qldengji' then begin
      Str := callfunc ('getsenderitemexistence 成人证明:1');
      if Str = 'false' then begin
         Str := 'say 未成年人凑什么热闹?';
         print (Str);
         exit;
      end;
      //获取性别来自主判断弹出什么对话框
      Str := callfunc ('getsendersex');
      if Str = '1' then begin
         Str := callfunc ('getsenderitemexistence 新郎证书:1');
         if Str = 'true' then begin
            Str := 'say 接完婚的人还来这里胡闹成何体统?';
            print (Str);
            exit;
         end;
         nnName := callfunc ('getsendername');
         print ('getsenderitem 成人证明:1');
         print ('putsendermagicitem 新郎证书:1 @司仪 4');
         print ('say 新郎,快准备结婚典礼吧!');
         exit;
      end;
      
      if Str = '2' then begin
          Str := callfunc ('getsenderitemexistence 新娘证书:1');
          if Str = 'true' then begin
            Str := 'say 接完婚的人还来这里胡闹成何体统?';
            print (Str);
            exit;
          end;
          vvName := callfunc ('getsendername');
          print ('getsenderitem 成人证明:1');
          print ('putsendermagicitem 新娘证书:1 @司仪 4');
          print ('say 新娘,快准备结婚典礼吧!');
          exit;
       end;
      
      exit;
   end;   
   //公告部分。如果没有男女两个玩家登记完,这里是不能生效的
   if aStr = 'qlyishi' then begin
      if nnName = '无名氏' then begin
          print ('say 新郎还没有登记吧!');
         exit;
      end;
      if vvName = '无名氏' then begin
          print ('say 新娘还没有登记吧!');
         exit;
      end;
      Str := callfunc ('getsendersex');
      if Str = '1' then begin
      Name := callfunc ('getsendername');
      if NamennName then begin
          print ('say 似乎你不是刚才那位新郎吧!');
         exit;
      end;
         Str := 'sendsendertopmsg ' + '新郎【';
         Str := Str + nnName;
         Str := Str + '】和新娘【';
         Str := Str + vvName;
         Str := Str + '】的结婚典礼马上开始!';
         print (Str);
         exit;
      end;
      if Str = '2' then begin
      Name := callfunc ('getsendername');
      if NamevvName then begin
          print ('say 似乎你不是刚才那位新娘吧!');
         exit;
      end;
         Str := 'sendsendertopmsg ' + '新郎【';
         Str := Str + nnName;
         Str := Str + '】和新娘【';
         Str := Str + vvName;
         Str := Str + '】的结婚典礼马上开始!';
         print (Str);
         exit;
      end;
      exit;
end;
end;
end.
页: [1]
查看完整版本: 【千年服务端】情侣任务之《司仪》,核心HELP文件公布!