72家族网-游戏资源论坛


全站
13小时前
全站
13小时前
全站
13小时前
全站
13小时前
全站
1天前
全站
2天前
全站
2天前
全站
3天前
全站
3天前
全站
6天前
全站
9天前
全站
10天前
全站
11天前
全站
12天前
全站
12天前
全站
16天前
全站
24天前
全站
25天前
全站
26天前
全站
27天前
全站
28天前
全站
28天前
全站
29天前
全站
29天前
全站
29天前
全站
2019-09-19
全站
2019-09-17
全站
2019-09-17
全站
2019-09-16
全站
2019-09-16
查看:【399】 回复:【16】 发表于 2019-7-30 11:09
族长

  离线 

小编

发表于 2019-7-30 11:09:19 | 显示全部楼层 |[复制链接]|阅读模式

GowLom2战神引擎常用脚本接口

GowLom2战神引擎常用脚本接口
给物品 :
      This_Player.Give('屠龙',2);
      ***给物品前务必判断包裹中是否有足够的空间,否则将不能给予物品,但相应货币或者材料将会正常扣除***
空包裹:
      This_Player.FreeBagNum
      如要给玩家2个屠龙,屠龙不可堆叠,所以至少需要两个包裹空位:
     if This_Player.FreeBagNum >= 2 then
     This_Player.Give('屠龙',2);
包裹中物品数量:
     This_Player.GetBagItemCount('物品')
扣除物品
     This_Player.Take('屠龙',2');
     ***扣除物品前物品判断包裹中是否有足够的物品,切记在扣除的方法中判断***
    if This_Player.GetBagItemCount ('屠龙') >= 2 then
    This_Player.Take('屠龙',2');

随机数:
    random(x) 返回值为0到 x-1 中的随机一个整数数
    比如random(10) 返回值为0-9 中随机一个整数
*综合以上常用接口,活动为使用100个金刚石可抽取随机一个武器,1%的概率抽取屠龙档武器 19%怒斩档  80%裁决   
procedure _getRdmWP;
var Rdm_int : integer;
WpName : string;
begin
    Rdm_int := random(100);  //获取随机数,随机数为 0-99中随机一个数字
   
    if This_Player.GetBagItemCount('金刚石') >= 100 then// 查看包裹中是否有足够的金刚石
    begin
        if This_Player.FreeBagNum >=1 then// 查看是否有足够的包裹空间
        begin
            if Rdm_int < 1 then // 随机到0的概率为1%
            begin
                case random(3) of
                    0 : WpName := '屠龙';
                    1 : WpName := '嗜魂法杖';
                    2 : WpName := '逍遥扇';
                end;
            end else if Rdm_int < 20 then //随机到1-19的概率为19%
            begin
                case random(3) of
                    0 : WpName := '怒斩';
                    1 : WpName := '龙牙';
                    2 : WpName := '龙纹剑';
                end;
            end else if Rdm_int < 100 then //随机到20-99的概率为80%
            begin
                case random(3) of
                    0 : WpName := '裁决之杖';
                    1 : WpName := '骨玉权杖';
                    2 : WpName := '无极棍';
                end;
            end;
            
            This_Player.Take('金刚石',100);
            This_Player.Give(WpName , 1);
            This_NPC.NpcDialog(This_Player,
            WpName + '已放入您的包裹!\|'
            +'{cmd}<继续使用100个金刚石抽取武器/@getRdmWP>');
        end else
        This_NPC.NpcDialog(This_Player,
        '没有足够的包裹空间!\|'
        +'{cmd}<返回/@main>');
    end else
    This_NPC.NpcDialog(This_Player,
    '没有足够的金刚石,不可抽取\|'
    +'{cmd}<返回/@main>');
end;

begin  //脚本入口  使用<返回/@main> 可跳转到此处
    This_NPC.NpcDialog(This_Player,
    '巴拉巴拉巴拉一堆废话\|'
    +'{cmd}<100金刚石抽取武器/@getRdmWP>');
end.

获取时间 :
   GetYear : 返回当前年份
   GetMonth : 返回当前月份
   GetDay : 返回当前日期
   GetDayOfWeek : 返回星期几   
   GetHour : 返回当前小时数
   GetMin: 返回当前分钟数
   GetNow() : 获取当前时间浮点数,返回值为double
   GetDateNum(datatime : double) 返回值为datatime 所对应的数字
   如2019年1月1日 使用GetDateNum(GetNow)  返回值为43466  
查改变量:
    私人变量为V,S ,服务器变量为G
    使用方法详见《程序变量操作指南》
增加、查询、扣除灵符:
   增加 :This_Player.AddLF(nType,LF_NUM);
   查询 :This_Player.MyLFnum
   扣除 :This_Player.DecLF(nType, LF_NUM, false);
   LF_NUM : 灵符数量
   nType : 编号,一般为0
   ***扣除前务必查询是否有足够的灵符***
增加、查询、扣除金币:
   增加 : This_Player.AddGold(GoldNum);
   查询 :This_Player.GoldNum
   扣除 :This_Player.DecGold(GoldNum);
   GoldNum : 金币数量
   ***扣除前务必查询是否有足够的金币***
增加、查询、扣除声望:
   查询:This_Player.MyShengwan
   声望的增加和扣除直接赋值即可
   如扣除10点声望
   if This_Player.MyShengwan >= 10 then
   This_Player.MyShengwan := This_Player.MyShengwan - 10;
   增加10点声望
   This_Player.MyShengwan := This_Player.MyShengwan + 10;
   ***扣除前务必查询是否有足够的声望***
元宝购买:
   This_Player.PsYBConsum(This_NPC,'回调函数名称',交易编号,元宝数量,购买个数);
   交易编号为大于20000的整数,建议每次活动使用不同的编号,方便后期统计使用
   回调函数必须返回boolean值,回调函数名称及逻辑都需自定义编写,请参照下面例子中的 function YB_NewComeBag(price, num: Integer):boolean;
   ***调用该接口时请判断好前置条件,该接口一经调用先扣除元宝,再执行回调函数***
如:2018年10月1日至7日每天12:00-19:00 可使用2元宝或2灵符随机抽奖(优先扣除灵符),奖励为5灵符(9%)、10声望(20%)、10000经验(40%)、10万金币(30%)、2个金条(1%)


procedure giveYBprz();  //灵符和元宝抽取奖励完全一样,自定义一个方法,方便调用 ,*****自定义方法内容需要写在调用之前*****
var rmd : integer;
itemStr : string;
begin
   
    rmd := random(100);
    if rmd < 9 then
    begin
        This_Player.AddLF(0,5);
        itemStr := '5灵符';
    end else if rmd < 29 then
    begin
        This_Player.MyShengwan := This_Player.MyShengwan + 10;
        itemStr := '10声望';
    end else if rmd < 69 then
    begin
        This_Player.Give('经验',10000);
        itemStr := '1万经验';
    end else if rmd < 99 then
    begin
        This_Player.AddGold(100000);
        itemStr := '10万金币';
    end else
    begin
        This_Player.Give('金条',2);
        itemStr := '2个金条';
        This_NPC.NpcNotice('恭喜“' + This_Player.Name + ' ”参加两元宝抽奖时获得了' + itemStr + '!!!'); //系统公告红字,全服可见
    end;  
    This_Npc.NpcDialog(This_Player,
    '你获得了:' + itemStr + '\|'+
    '{cmd}<继续使用2元宝抽奖/@RdmYBPrz>'
    );
end;
procedure _RdmYBPrz;
begin
    if (GetYear = 2018) and (GetMonth = 10) and (GetDay >= 1) and (GetDay <= 7) then
    begin
        if (GetHour >= 12) and (GetHour < 19) then  //注意结束时间,19:00:00-19:59:59 GetHour均返回19
        begin
            if This_Player.FreeBagNum >= 2 then
            begin
                if This_Player.MyLFnum >= 2 then //优先使用灵符,灵符足够直接扣除灵符并给与奖励
                begin
                    This_Player.DecLF(0,2,false);
                    giveYBprz();    //直接调用给奖励方法 *****自定义方法内容需要写在调用之前*****
                end else                           //灵符不足则使用元宝
                This_Player.PsYBConsum(This_NPC,'YB_NewComeBag',20001,2,1);  //YB_NewComeBag为自定义回调函数名称, 20001为扣除编号,方便统计,2为元宝数量,1为个数(一般使用1即可)
游客,内有隐藏资源下载地址或隐藏内容,查看请登录回复

免责声明:

本站所有资源、教程来自互联网转载,仅供学习交流,不得商业运营资源,不确保资源完整性,不提供任何技术服务。【点击此处加入72家族网QQ群

本站资源仅供本地编辑研究学习参考,禁止未经资源商正版授权参与任何商业行为,违法行为!如需商业请购买各资源商正版授权

本站仅收集资源,提供用户自学研究使用,本站不存在私自接受协助用户架设游戏或资源,非法运营资源行为。免责声明

1、本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与商业和非法行为,请在24小时之内自行删除!
2、本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。
3、若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。 我们不承担任何技术及版权问题,且不对任何资源负法律责任。
4、论坛的所有内容都不保证其准确性,完整性,有效性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
5、用户使用本网站必须遵守适用的法律法规,对于用户违法使用本站非法运营而引起的一切责任,由用户自行承担
6、本站所有资源来自互联网转载,版权归原著所有,用户访问和使用本站的条件是必须接受本站“免责声明”,如果不遵守,请勿访问或使用本网站
7、本站使用者因为违反本声明的规定而触犯中华人民共和国法律的,一切后果自己负责,本站不承担任何责任。
8、凡以任何方式登陆本网站或直接、间接使用本网站资料者,视为自愿接受本网站声明的约束。
9、本站以《2013 中华人民共和国计算机软件保护条例》第二章 “软件著作权” 第十七条为原则:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。若有学员需要商用本站资源,请务必联系版权方购买正版授权!
10、本网站如无意中侵犯了某个企业或个人的知识产权,请来信【站长信箱】告之,本站将立即删除。

【点击此处查看部分资源的解压密码】

【资源失效,购买后无法正常下载解决办法】


回复

使用道具 打印 举报

回复楼主 感谢您加入72家族网!每发一个帖子可以增加一定的家族币哦~请点击右下角“查看本版积分规则”

游客
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

腾讯云最新服务器秒杀活动开放啦!上一条 /1 下一条

本站创立于2011年,已运行,感谢一路相伴