当前位置: 首页 > article >正文

传奇996_22——自动挂机

  • 登录钩子函数中执行
callscript(actor, "../QuestDiary/主界面基础按钮/主界面基础按钮QM", "@基础按钮QM")
  • @基础按钮QM执行了已下代码
#IF
Equal <$CLIENTFLAG> 1
#ACT
goto @PC端面板加载

 
#IF
Equal <$CLIENTFLAG> 2
#ACT
goto @移动端面板加载


[@PC端面板加载]
#if
#act
goto @挂机按钮_PC

[@挂机按钮_PC]
; 1是挂机中,0是未挂机
#if
check [2] 1 

#act
MOV S$主界面按钮 <Button|x=-30|y=-0|pimg=public/newbutton/guaji_1.png|mimg=public/newbutton/guaji_1.png|nimg=public/newbutton/guaji_1.png|link=@onbtnclick,挂机_开关>
inc S$主界面按钮 <Effect|x=-108.0|y=-68.0|scale=0.8|speed=1|effecttype=0|effectid=30115|act=0|>
ADDBUTTON 107 2 <$STR(S$主界面按钮)>
#elseact
MOV S$主界面按钮 <Button|x=-30|y=0|pimg=public/newbutton/guaji_0.png|mimg=public/newbutton/guaji_0.png|nimg=public/newbutton/guaji_0.png|link=@onbtnclick,挂机_开关>
ADDBUTTON 107 2 <$STR(S$主界面按钮)>

然后调用的点击按钮触发函数,参数为“挂机_开关”,接着跳转到“主界面按钮触发”文件中,执行相应的触发函数

ClickEvent.RegisterMsg("挂机_开关", function(actor)
    release_print("-- 挂机开关函数被调用!!!")
    if getflagstatus(actor, 2) == 1 then
        setflagstatus(actor,2,0)
        stopautoattack(actor)
    else
        setflagstatus(actor,2,1)
        startautoattack(actor)
    end
end)

bug

个人标识取反,界面不刷新变化

完成上面步骤后,并没有结束,因为要设置挂机按钮标识取反,但是只是单纯的取反,界面不会被刷新,所以还要从上面再走一遍“挂机按钮选取图片”这一步骤的代码。这里使用的是QF的钩子函数

  • StartAutoPlayGame 开启挂机触发
  • StopAutoPlayGame 停止挂机触发
    以下代码我敢聚无需设置挂机状态和打怪时间变量,没啥用,只需要修改个人标识然后跳转即可
--- StartAutoPlayGame 开启挂机触发
function startautoplaygame(actor)
    setplaydef(actor, "N$挂机状态", 1)
    setplaydef(actor, "N$打怪时间",0)
    setflagstatus(actor, VarCfg.flags.autoplay, 1)
    local flag = getconst(actor, "$CLIENTFLAG")
    flag = tonumber(flag)
    if flag == 1 then
        callscript(actor, "../QuestDiary/主界面基础按钮/主界面基础按钮QM", "@挂机按钮_PC")
    end
    if flag == 2 then
        callscript(actor, "../QuestDiary/主界面基础按钮/主界面基础按钮QM", "@挂机按钮_sj")
    end
end

--- StopAutoPlayGame 停止挂机触发
function stopautoplaygame(actor)
    setplaydef(actor, "N$挂机状态", 0)
    setflagstatus(actor, VarCfg.flags.autoplay, 0)
    local flag = getconst(actor, "$CLIENTFLAG")
    flag = tonumber(flag)
    if flag == 1 then
        callscript(actor, "../QuestDiary/主界面基础按钮/主界面基础按钮QM", "@挂机按钮_PC")
    end

    if flag == 2 then
        callscript(actor, "../QuestDiary/主界面基础按钮/主界面基础按钮QM", "@挂机按钮_sj")
    end

end

点击按钮,特效出现大黑框问题

在modleinfo模型表中的该特效配置设置的一个字段blendmode,原本是0,改成1就行。
修改后:

	[4045] = { 
		index=4045,
		id=9101,
		-- type=4,
		-- sex=0,
		-- dir=1,
		-- blendmode=0,
		-- stand_pos_x=0,
		-- stand_pos_y=1,
		-- idle_interval=0.3,
		-- showstand_interval=10,
		type=4,
		sex=0,
		dir=1,
		blendmode=1,
		stand_pos_x=0,
		stand_pos_y=1,
		idle_interval=0.085,
	},

blendmode:混合模式(0normal常规、1add变亮、2screen滤色)

跳转地图后不战斗

只有使用这个方法才会战斗,其他方法都试了,不行

  • delaygoto(actor, 1000,“StartAutoPlayGame”,0)不行
  • startautoattack(actor)不行
  • callscriptex(actor,“StartAutoPlayGame”)不行
  • callscript(actor, “…/QuestDiary/游戏功能/跳转并挂机”, “@挂机_腐朽墓穴”)可行
[@挂机_腐朽墓穴]

#if
#act
map xin1
StartAutoPlayGame

龙岭个人标识:

常量、标识配置全在MirServer\Mir200\Envir\QuestDiary\config这个文件夹中

  • ConstCfg.lua:全局信息,我也不知道具体是啥
  • EventCfg.lua:事件常量
  • ModuleCfg.lua:模块常量,不知道干啥的
  • MsgCfg.lua:不知道干啥的
  • ResponseCfg.lua:不知道干啥的
  • VarCfg.lua:引擎变量、个人标识记录

http://www.kler.cn/a/400842.html

相关文章:

  • K8S资源限制之resources
  • 十五届蓝桥杯赛题-c/c++ 大学b组
  • 华为刷题笔记--题目索引
  • 学者观察 | 元计算、人工智能和Web 3.0——山东大学教授成秀珍
  • EEG+EMG学习系列 (1) :一个基于小波的自动睡眠评分模型
  • 搭建MC服务器
  • 大数据学习15之Scala集合与泛型
  • 力扣经典面试13罗马数字转整数
  • springboot006基于SpringBoot的网上订餐系统(源码+包运行+LW+技术指导)
  • DOM NodeList 对象简介
  • 7天掌握SQL - 第一天:数据库基础与SQL入门
  • 在AndroidStudio中新建项目时遇到的Gradle下载慢问题,配置错的按我的来,镜像地址不知道哪个网页找的,最主要下载要快
  • 汽车资讯新趋势:Spring Boot技术解读
  • ClickHouse的介绍、安装、数据类型
  • 泷羽sec-安全见闻(8)
  • Gradio 和 Streamlit 安装与使用教程
  • 在Unity中使用Epplus写Excel
  • 使用Mybatis向Mysql中的插入Point类型的数据全方位解析
  • API 数据处理与 SQL 批量更新技巧:CASE 语句优化操作指南
  • RadSystems 自定义页面全攻略:个性化任务管理系统的实战设计
  • CSS3_过渡(八)
  • 力扣(leetcode)面试经典150题——26. 删除有序数组中的重复项
  • 35.搜索插入位置-力扣(LeetCode)
  • ssm139选课排课系统的设计与开发+vue(论文+源码)_kaic
  • React Native 全栈开发实战班 - 打包发布之热更新
  • shell编程规范和脚本变量