骑砍2霸主MOD开发(14)-进击的巨人
一.巨人
sbyte boneIndex = Skeleton.GetBoneIndexFromName(Mission.MainAgent.AgentVisuals.GetSkeleton().GetName(), "r_hand");
cp = Mission.MainAgent.AgentVisuals.AddPrefabToAgentVisualBoneByRealBoneIndex("p_sword_a", boneIndex);
float agentScale = Mission.MainAgent.AgentScale;
agentScale += 9f;
MethodInfo method = AccessTools.Method(typeof(Agent), "SetInitialAgentScale");
method.Invoke(Mission.MainAgent, new object[1] { agentScale });
二.巨人践踏
public class HugeManTimer_1 : PLCommonBasicMissionTimer{private Mission _mission;public HugeManTimer_1(Mission mission, float triggerInterval, bool isTriggerOnce) : base(triggerInterval, isTriggerOnce){_mission = mission;}public override void TriggerTimerScript(){try{MainAgentSpeedUp();MainAgentSwordAttack();}catch (Exception ex){File.AppendAllLines(PLModuleConstans.ModuleCrashLogPath, new string[] { ex.ToString(), ex.Message, ex.StackTrace });}}private void MainAgentSpeedUp(){if (Input.IsKeyDown(InputKey.W)){PLAgentUtilities.AgentMoveAlongAxix(_mission.MainAgent, 0.3f, PLAgentUtilities.Axix.Y);}if (Input.IsKeyDown(InputKey.S)){PLAgentUtilities.AgentMoveAlongAxix(_mission.MainAgent, -0.3f, PLAgentUtilities.Axix.Y);}if (Input.IsKeyDown(InputKey.A)){PLAgentUtilities.AgentMoveAlongAxix(_mission.MainAgent, -0.3f, PLAgentUtilities.Axix.X);}if (Input.IsKeyDown(InputKey.D)){PLAgentUtilities.AgentMoveAlongAxix(_mission.MainAgent, 0.3f, PLAgentUtilities.Axix.X);}}private void MainAgentSwordAttack(){if (MissionAgentBehavior.cp == null){return;}if (Input.IsKeyPressed(InputKey.LeftMouseButton)){MBList<Agent> enemyAgentList = new MBList<Agent>();_mission.GetNearbyEnemyAgents(new Vec2(_mission.MainAgent.Frame.origin.x, _mission.MainAgent.Frame.origin.y), 5f, _mission.MainAgent.Team, enemyAgentList);foreach (Agent enemyAgent in enemyAgentList){PLAgentUtilities.GiveDamageToAgent(_mission.MainAgent, enemyAgent, 60);}}if (Input.IsKeyPressed(InputKey.Space)){MBList<Agent> enemyAgentList = new MBList<Agent>();_mission.GetNearbyEnemyAgents(new Vec2(_mission.MainAgent.Frame.origin.x, _mission.MainAgent.Frame.origin.y),5f, _mission.MainAgent.Team, enemyAgentList);foreach (Agent enemyAgent in enemyAgentList){PLAgentUtilities.GiveDamageToAgent(_mission.MainAgent, enemyAgent, 100);}}}}
相关文章:
骑砍2霸主MOD开发(14)-进击的巨人
一.巨人 sbyte boneIndex Skeleton.GetBoneIndexFromName(Mission.MainAgent.AgentVisuals.GetSkeleton().GetName(), "r_hand"); cp Mission.MainAgent.AgentVisuals.AddPrefabToAgentVisualBoneByRealBoneIndex("p_sword_a", boneIndex); float agent…...
Android 可拖拽的View,限制在父布局中随意拖拽;拖拽结束后可左右吸边;
实现方法一:自定义View 可随意拖动拖拽的View,限制拖动范围是父布局中; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.view.MotionEvent; import android.view.ViewGroup; …...
逐步更新动画混合参数(Blend)使其平滑地过渡到目标值
1.具体实现 逐步更新一个动画混合参数(Blend),使其平滑地过渡到目标值,可以实现角色动作的平滑过渡,比如从走路过渡到跑步。 private float currentBleng;private float targetBlend;public float accelerSpeed 5;//…...
【多模态/CV】图像数据增强数据分析和处理
note 多模态大模型训练前,图片数据处理的常见操作:分辨率调整、网格畸变、水平翻转、分辨率调整、随机crop、换颜色、多张图片拼接、相似图片检测并去重等 一、分辨率调整 from PIL import Image def resize_image(original_image_path, save_image_p…...
代码随想录——修建二叉搜素树(Leetcode669)
题目链接 递归 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* …...
EasyExcel导出多个sheet封装
导出多个sheet 在需求中,会有需要导出多种sheet的情况,那么这里使用easyexcel进行整合 步骤 1、导入依赖 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><d…...
【Python错误】:AttributeError: ‘generator‘ object has no attribute ‘next‘解决办法
【Python错误】:AttributeError: ‘generator’ object has no attribute next’解决办法 在Python中,生成器是一种使用yield语句的特殊迭代器,它允许你在函数中产生一个值序列,而无需一次性创建并返回整个列表。然而,…...
如何配置Feign以实现服务调试
1、引入依赖 在项目中,需要引入Spring Cloud OpenFeign的依赖。这通常是通过在pom.xml文件中添加相应的Maven依赖来完成的。例如: <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starte…...
pc之间的相互通信详解
如图,实现两台pc之间的相互通信 1.pc1和pc2之间如何进行通讯。 2.pc有mac和ip,首先pc1需要向sw1发送广播,sw1查询mac地址表,向router发送广播,router不接受广播,router的每个接口都有ip和mac,…...
Mongodb中字段的删除
学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第61篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。 本篇文章,探讨UPDATE中的操作符$unset。Mongodb数据插入后,开发人员使用$u…...
TP8 PHP 动态变量调用 (new $class())->$action($data)
动态: $class \app\table\model\Log; $action DataSave; $data [...]; // 假设这是你要保存的数据//class_exists和method_exists的检查,这段代码能够在尝试实例化类或调用方法之前,先验证类是否存在以及该类中是否存在指定的方法。如果类…...
理解JVM内存模型与Java内存模型(JMM)
理解JVM内存模型与Java内存模型(JMM) 在Java程序的运行过程中,内存管理和线程的同步是两个重要的概念。本文将深入探讨JVM内存模型(Java Virtual Machine Memory Model)和JMM(Java Memory Model࿰…...
鸿蒙OS初识
学习官网:https://www.harmonyos.com/cn/develop 准备 注册,安装软件(node:12, DevEco Studio): https://developer.harmonyos.com/cn/docs/documentation/doc-guides/software_install-0000001053582415#ZH-CN_TOP…...
发布自己的 npm 插件包:步骤与最佳实践
在 Node.js 的生态系统中,npm(Node Package Manager)是一个不可或缺的组成部分。npm 允许开发者创建、共享和使用各种库和插件。如果你有自己的 Node.js 插件或库,并且希望与全世界的其他开发者共享,那么发布到 npm 是…...
BubbleML: A Multiphase Multiphysics Dataset and Benchmarks for Machine Learning
我们使用以下六个分类标准: 研究方法: 这个标准根据如何收集和分析数据来区分研究方法。 实验研究,如参考文献[64]中的研究,涉及在受控环境中研究人员操纵变量并观察结果的物理实验。这种方法对于收集真实世界的数据很有价值,但可能成本高且耗时。模拟研究利用计算模型来模…...
vscode+latex设置跳转快捷键
安装参考 https://blog.csdn.net/Hacker_MAI/article/details/130334821 设置默认recipe ctrl P 打开设置,搜索recipe 也可以点这里看看有哪些配置 2 设置跳转快捷键...
PHP序列化、反序列化
目录 一、PHP序列化:serialize() 1.对象序列化 2.pop链序列化 3.数组序列化 二、反序列化:unserialize() 三、魔术方法 四、NSSCTF相关简单题目 1.[SWPUCTF 2021 新生赛]ez_unserialize 2.[SWPUCTF 2021 新生赛]no_wakeup 学习参考࿱…...
websocket链接携带参数
前端创建链接时官方提供的构造函数 var aWebSocket new WebSocket(url, [protocols]); url:要连接的URL;这应该是WebSocket服务器将响应的URL。 protocols:可选;一个协议字符串或者一个包含协议字符串的数组。这些字符串用于指定…...
【C++进阶】深入STL之list:模拟实现深入理解List与迭代器
📝个人主页🌹:Eternity._ ⏩收录专栏⏪:C “ 登神长阶 ” 🤡往期回顾🤡:初步了解 list 🌹🌹期待您的关注 🌹🌹 ❀STL之list 📒1. list…...
技术管理之巅—如何从零打造高质效互联网技术团队阅读体验
技术管理之巅—如何从零打造高质效互联网技术团队 《技术管理之巅:如何从零打造高质效互联网技术团队》是黄哲铿所著的一本书,致力于帮助技术管理者从零开始打造高效的互联网技术团队。该书分为多个章节,分别探讨了从团队文化建设到技术架构…...
Ruby开发者指南:使用chatgpt-ruby轻量级封装集成OpenAI API
1. 项目概述:一个为Ruby开发者打造的OpenAI API轻量级封装 如果你是一名Ruby开发者,正琢磨着如何在自己的Rails应用、Sinatra服务或者一个简单的CLI工具里,优雅地集成ChatGPT的能力,那么 chatgpt-ruby 这个Gem很可能就是你正在…...
AI图像编辑中的性别擦除现象与视觉公平性测试
1. 项目概述:当AI“擦除”男性面孔时,我们到底在测试什么?“AI Erases Men Too: A Visual Test of Bias Across Four Leading Tools”——这个标题乍看像一则科技媒体的警示快讯,但背后是一次扎实、可复现、有明确方法论支撑的视觉…...
Vexip UI暗黑主题实现:CSS变量与主题切换完全指南 [特殊字符]
Vexip UI暗黑主题实现:CSS变量与主题切换完全指南 🎨 【免费下载链接】vexip-ui A Vue 3 UI library, highly customizability, full TypeScript, performance pretty good. 项目地址: https://gitcode.com/gh_mirrors/ve/vexip-ui 想要为你的Vue…...
避开BUUCTF《Life on Mars》的思维陷阱:当information_schema查询结果‘不对劲’时,你的排查清单应该有哪些?
破解BUUCTF《Life on Mars》的数据库迷局:当information_schema说谎时的七种侦查策略 在CTF赛场上,SQL注入类题目往往不会按教科书上的剧本发展。当你在BUUCTF《Life on Mars》这道题中执行group_concat(database()) from information_schema.schemata却…...
Tera数据库:从入门到精通,打造互联网级分布式存储系统
Tera数据库:从入门到精通,打造互联网级分布式存储系统 【免费下载链接】tera An Internet-Scale Database. 项目地址: https://gitcode.com/gh_mirrors/ter/tera Tera数据库是一个高性能的分布式NoSQL数据库系统,专为处理互联网规模的…...
从HEX到芯片:使用J-Flash实现高效固件烧录与生产级加密
1. 认识J-Flash:你的芯片烧录好帮手 第一次接触J-Flash时,我正为一个量产项目发愁——需要给500片GD32F103烧录固件。手动用IDE一个个烧?效率太低;找代工厂?成本太高。直到同事推荐了J-Flash,我才发现原来烧…...
硅应变计与Σ-Δ ADC协同设计及温度补偿技术
1. 硅应变计与Σ-Δ ADC的协同优势解析硅基应变计在现代传感器领域占据重要地位,其核心原理基于压阻效应——当硅材料发生机械形变时,晶格结构变化导致载流子迁移率改变,从而引起电阻值变化。与传统金属箔应变计相比,硅应变计的灵…...
让机房管理告别粗放,每一寸资源都物尽其用
对于机房运维人员而言,U 位管理看似是基础小事,却是决定机房运维效率、资产安全与合规水平的关键。当前,不少企业机房、单位机房仍沿用传统人工管理模式,机柜 U 位全靠记忆、台账全靠 Excel、盘点全靠熬夜,看似节省了成…...
从F103到F407:老STM32玩家升级指南,详解性能差异与项目移植实战
从F103到F407:老STM32玩家升级指南,详解性能差异与项目移植实战 对于熟悉STM32F1系列开发的工程师来说,升级到F407系列既是一次性能跃迁的机会,也伴随着学习曲线和移植挑战。本文将深入剖析两款芯片的差异,并提供可落地…...
从波形到Mel谱图:机器学习音频特征提取的完整实践指南
1. 音频信号处理基础:从物理世界到数字信号 第一次接触音频信号处理时,我被那一串串看似随机的波形数据弄得一头雾水。直到后来才明白,这些数字背后其实对应着我们熟悉的物理现象——声音。声音的本质是空气压力的变化,就像水面泛…...
