简单的致美化自动签到脚本,用法见脚本内容
RMMV 简易的诅咒装备
装备上后就无法脱下的装备,用法见脚本内容。
1 | //============================================================================= |
【原创翻译】Tonypa 基于瓦片地图的游戏开发教程 (Tonypa's tile-based tutorials)
教程地址:http://www.gotoandplay.it/_articles/2004/02/tonypa.php
教程原作者地址(已失效):http://www.tonypa.pri.ee/
看到一篇非常棒的 2D 瓦片地图游戏开发教程,对瓦片地图游戏进行了手把手级别深入浅出的系统教学。鉴于原文已经是 2004 年的教程,且作者原始博客已经无法访问,为了避免教程遗失,在这里对该教程进行翻译留档。
原文在 Flash 环境使用 ActionScript 进行开发,由于 Flash 播放器在各浏览器上都已停止支持,本文并不能直接展示原教程的示例,仅提供镜像下载。本文也会使用 HTML5 + PixiJS 对教程中的示例进行复刻,仅供参考。
Could not find com.github.mcxtzhang:SwipeDelMenuLayout:V1.3.0 问题处理
问题
工地安卓项目编译时(2023.10.11)突然报 Could not find com.github.mcxtzhang:SwipeDelMenuLayout:V1.3.0
解决
检查发现该组件在 jitpack.io 上 V1.3.0 版本为 Error 状态,临时改为使用 V1.2.5 版本编译通过。
1 | api 'com.github.mcxtzhang:SwipeDelMenuLayout:V1.2.5' |

npm install 报 Refusing to delete xxx 问题处理
问题
在配置工地项目环境时,执行 npm install 初始化时,报错: Refusing to delete xxx
1 | 3621 verbose stack Error: Refusing to delete E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\@babel\generator\node_modules\.bin\jsesc.ps1: ../../../../_jsesc@2.5.2@jsesc/bin/jsesc symlink target is not controlled by npm E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\@babel\generator\node_modules\jsesc |
1 | 46159 verbose stack Error: Refusing to delete E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\.bin\parser.ps1: ../../../../_@babel_parser@7.21.8@@babel/parser/bin/babel-parser.js symlink target is not controlled by npm E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\@babel\parser |
解决
经过反复更换 node、npm 版本无果,删除 package-lock.json 无效,删除 .npmrc 无效后,尝试根据报错删除对应文件,如
E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\@babel\generator\node_modules\.bin\jsesc.ps1
E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\@babel\generator\node_modules\.bin\jsesc.cmd
E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\@babel\generator\node_modules\.bin\jsesc
E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\.bin\parser.ps1
E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\.bin\parser.cmd
E:\git\xxx\node_modules\_babel-eslint@10.1.0@babel-eslint\node_modules\@babel\traverse\node_modules\.bin\parser
后,再次执行 npm install 不再报错,安装成功。
一次常规apk逆向
Apktool 解包打包
下载最新版 apktool.jar 和 apktool.bat
将 apk(以
base.apk为例) 与 apktool.jar 和 apktool.bat 放在同一目录解包
1
apktool.bat d base.apk
生成
base文件夹修改文件
打包
1
apktool.bat b base
在 ./base/dist 中找到
base.apk
使用 SignApk 重新签名
生成 keystore 签名文件
1
keytool -genkey -alias 别名 -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore
将 keystore 文件转换为 pk8 和 x509.pem 此部分参考这里
生成 pk12 文件
1
keytool -importkeystore -srckeystore test.keystore -destkeystore tmp.p12 -srcstoretype JKS -deststoretype PKCS12
生成 rsa.pem
1
openssl pkcs12 -in tmp.p12 -nodes -out tmp.rsa.pem
复制
BEGIN CERTIFICATE、END CERTIFICATE部分(包含这两行)到新文件cert.x509.pem,即是我们最后需要的 x509.pem 证书文件生成 pk8 文件
1
openssl pkcs8 -topk8 -outform DER -in tmp.rsa.pem -inform PEM -out private.pk8 -nocrypt
下载 SignApk,将
base.apk放入signapk目录签名
1
java -jar signapk.jar cert.x509.pem private.pk8 base.apk new.apk
点到线段的最短位置
效果
计算点到线段的最短位置,效果如下:
代码
1 | /** |




