今天我在写Unity有限状态机时,出现一个bug,我把OnEnter方法注册到MonoManager的AddStart方法,切换状态时会移除掉原来的OnStart方法,增加一个新的OnStart方法。结果OnEnter方法迟迟不执行。解决方法也很简单,每次AddStart时要调用一下OnStart函数,因为OnStart方法写在Start里,脚本执行时只会调用一次,我们再往里AddStart它是默认不会调用的,所以我们手动调用一下就行了。
去年我用B站收益,花200多买了个vivo z3i手机,运存6GB空间128GB,想着闲置也是闲置,能拿来发挥用处就好了。拿来干什么呢,搭建Alist?感觉太浪费了;做网站?没有这个需求;做NAS?感觉不合适;最后突发奇想,用来装一个linux系统,一方面练习、另一方面也能搭建很多服务用。
安装linux系统。首先我上网找了一些教程,最后发现一款叫“虚拟电脑app”的软件很好用,是由其他大佬打包好的软件,下载后点开无需操作即可自动安装Ubuntu系统。
登录root账户打开我们的旧手机——开始使用——远程控制——通过webTTY。开启我们的远程连接。会返回给你一串链接,我们直接在另一台设备的浏览器里打开。输入sudo -i,然后要填密码,看@符号前面的字符,那就是你的密码。输密码时是不会显示密码的,所以不要以为自己没输上。最后出现root@xxxx说明你已经登录root账户了。
创建文件夹分别执行mkdir /home/bilibili/ffmpg和mkdir /home/bilibili/video,创建两个文件夹,再执行`cd /home/bilibi ...
最近一方面在学javaScript,一方面在运营萤光网站,一方面忙于学业,一方面在学Unity,每当晚上我就会去看Joker的ARPG游戏开发教程,其中有一些好的思路,我觉得可以记录一下。之前我把鬼哥(up鬼鬼鬼ii)的ARPG课程看完了,再来看Joker的,对比一下有一些值得提的地方。
一、有限状态机控制玩家和敌人AI之前看鬼哥的课,全程是用Animator窗口来控制角色状态,要进行复杂的连线。后来我看了Joker的教程,还有一个印度人复刻原神的教程,感觉他们在这点的做法要更好——完全利用有限状态机去控制角色状态,不管是玩家、还是敌人。其实用不用Animator,都能实现相应的功能,没有哪个更好。Animator连线好处是便于理解、更直观,缺点是状态多起来就难以维护了;有限状态机优点是逻辑清晰,只需要考虑转换什么状态就可以了,本质上和Aniamtor窗口其实一模一样,缺点是难以理解。对初学者,我建议还是要用Animator窗口连线,便于理解;学一段时间后再试着去理解有限状态机的概念。Joker的有限状态机,最开始我是根本看不懂,现在觉得他的有限状态机写的很好。我见过比较好的有两种有 ...
注:请勿用于违法、违规行为,仅出于个人学习目的。
为了整理自己Alist上的文件,我突发奇想,能不能让最近很火的deepseek写python脚本,爬取我的Alist网站并打印出路径呢?于是用AI写了三个脚本。
123456789101112131415161718192021222324252627282930313233343536373839404142434445import requests# 配置信息ALIST_URL = "http://xxxxx.xxx/" # Alist网盘地址TARGET_FOLDER = "xxxx" # 目标文件夹路径OUTPUT_FILE = "output.txt" # 输出文件名# 获取文件夹列表def get_folder_content(parent_path): url = f"{ALIST_URL}/api/fs/list" params = { "path": f&q ...
Unity
未读注:25年2月24日进行补充这篇文章介绍一下公共Mono模块。
为什么有公共Mono模块?
很多时候我们写代码,不想继承MonoBehaviour类(比如减少性能开销、简化代码量,MonoBehaviour),但又想用MonoBehaviour里Update、Start等方法。这时候就需要搭建公共Mono模块来实现我们的需求了。
思路
以实现Update为例,既然我们知道,不继承MonoBehaviour类的不能直接调用Update等方法,那么有没有什么办法、把我们的方法塞到update里呢?
答案是有的,这里有个知识点是“委托和事件”,我们可以把我们的方法、塞到委托里,在继承Mono的脚本里调用这个委托就可以了。
下面第一种是跟着唐老狮写得,写了两个脚本,但个人不太喜欢这种,觉得比较臃肿,写成一个脚本就好了。
123456789101112131415161718192021222324252627282930313233343536373839404142using UnityEngine.Events;public class MonoController : MonoBeha ...
Unity
未读有限状态机实现方式不止一种,这里标题为第三版,不是说前面几版不好,而是又提供了一种新的有限状态机写法。我之前对有限状态机的想法是,用来做敌人AI,现在再次开阔视野,可以用代码的形式来替代Animator窗口复杂的连线(之前也有人推荐我用Animancer插件,等我学到了我再学),简洁清晰地转换状态。这个思路主要借鉴自Joker老师的RPG进阶教程,有能力的话大家可以去支持一下Joker老师。
思路分析
再开始写代码前,我们需要先分析自己的需求:
首先是状态机,大概分为敌人状态机、玩家状态机,那么就声明个基类状态机最好。状态机怎么写?首先我们需要一个字典容器来存储所有的状态,然后我们需要一个转换状态的方法,然后我们还需要存储下当前状态,就写一个GetState的方法。
状态怎么写?首先我们有个状态基类StateBase,记录所有状态都要有的方法;再分别写PlayerStateBase和EnemyStateBase继承StateBase,最后我们具体的状态再次分门别类的继承,这样就很有条理了。
实践过程
在设计有限状态机前,我们先设置好我们的状态基类StateBase,记录下我们所有要执 ...
本文是前端之CSS进阶知识点总结,因为前端学习2写的太长了、也算比较全面,于是再写一个进阶篇。
HTML5新特性
HTML5语义化标签
只使用IE9以上的。IE9需要转化为block
<header>头部标签;<nav导航标签;<article>内容标签;<section>定义文档某个区域;<aside>侧边栏目标签;<footer>尾部标签;
视频标签
1<video src = "" controls = "controls" autoplay = "autoplay" muted = "muted" loop = "loop"></video>
音频标签
1<audio src="" controls="controls" loop="loop" autoplay="autoplay" >< ...
前言:由于css内容实在是太多,我发现仅凭我一个人根本写不完,于是我会在本文档引用一些外部链接,可以跳转去看其他人的文档。我现在还在思考怎么去写这个css笔记,它和html不一样,html好总结,所以我会陆续进行修改更新。等我完全完成了这些任务,会发到github上。
接下来我们将要学习css,如果要讲完所有css知识点,对我来说是不可能的,因为css太多了。曾经有本砖头厚的书、记录的全是css,所以我只能总结常用的。css是个博大的学问,具体要实现什么需求时、再具体去学习。不过我会在其他文章记录一些比较流行的css特效。
我建议读者在学习时,自己建个html文件,把我写的css粘贴到里边看效果(博客展示不方便,容易乱,因为我文章用html写的)
css知识点
基础语法
css规则由两个主要部分:选择器和声明,一个生命有一条属性和一个值,属性间用分号隔开。
123456<style>.hljs { background: #f5f5f5;}</style>.hljs是选择器,background是属性、#f5f5f5是值
css的引入 ...
在研究很长时间后,我发现一个奇妙的存储方案。真正意义上实现零成本、无限容量存储,安全性一般先来介绍一下我们的方案,原理是利用telegram做我们的资源存储、利用serv00搭建的网站来上传、下载我们的资源,风险的话是滥用可能会被telegram封号。但根据调查滥用的人还是比较少的,只要不往死里作、滥用也不会封号。
如何部署?
前置准备:申请一台serv00虚拟主机,网上有很多教程,可以参考。现在申请一般都是挂代理,用siteproxy反代网站——实在不行找人代申请。
为什么用serv00呢,原因是它不限制流量,但是不要玩太过火了、滥用serv00也可能被封号。
首先项目来自于tgDrive,我们打开它,从右边Releases下载最新的jar文件,我这里是0.0.8,于是拿着个举例子。
之后打开登录到我们的serv00虚拟主机,之后在port resservation申请一个端口,这里我申请的是60062;再之后我们在WWW website添加反代,type选择proxy,绑定我们申请的端口。接着在File Manager上传我们的jar文件,用任何一款ssh软件连接到我们的serv0 ...
galgame
未读在此之前,已经为猫猫社作品《すみれ》里的筱原明里写过很多文章,但我总觉得不太满意,原因是总是有所顾虑。比如,我不太了解片冈智的生平经历,我也不敢保证我对作品的理解正确,但我还是想,就筱原明里这个角色写下我自己的看法。或许可能是我的胡乱猜测和臆想,但我还是想大胆地写下来自己的想法。所以这篇文章是不严谨的,仅代表我自己对片冈智、对筱原明里的理解。
片冈智的缩影
在《水仙:堇》开头,片冈智就说过,关于筱原明里的故事可能很难理解,但他还是想强行加到游戏里;后来猫猫社发布的几个后续游戏里,总能看到有关于筱原明里的新的故事内容。
为什么片冈智对这个人物很执着?不惜破坏《水仙:堇》的体验、在后续作品屡次为这个角色补充新的情节?我觉得,因为筱原明里正是片冈智的一部分缩影,因为这个角色是以片冈自己为原型创作了、融入自己最真实的感受,所以片冈才对这个角色如此执着。
我之所以会这么觉得,有很多依据吧。第一是当看到《すみれ》里细致的心理描写时,我就觉得,如果不是有亲身体验、经历过孤独、自卑、逃避心理的人,是不会写出这样的文字的,因为他无法体会、更无法写出这样的文字。第二便是来自于片冈智创作的名为“1993” ...