极简CLEO HUD
极简HUD
我继续制作主要用于培训脚本编写者的脚本传统。这次我在CLEO中创建了自己的HUD,虽然相当简单,但显示了最重要的游戏指标,并且具有以下特点:
• 在菜单中关闭时会自动关闭(无需记住脚本的开关按钮,避免无谓地使用键盘)
• 根据元素的值改变某些元素的颜色(例如,随着夜晚的临近,时钟变得更暗,而弹匣中子弹的颜色在数量减少时变得更亮)
• 在移动鼠标/迷你摇杆时轻微移动元素。
除了上述内容,您在学习代码时可以学到:
• 应用常量
• 处理内存地址
• 使用绘图模式(text_draw)
• 使文本并排显示而不重叠
• 读取鼠标/迷你摇杆的偏移量
• 知道弹匣中剩余的子弹数量
• 使一个值依赖于另一个值(甚至可以利用正弦函数!)
• 在内存中找到剩余氧气的值
• 在内存中找到警察“愤怒”计数器
• 使用scm函数
2020年5月17日: 修复了某些武器类别(如引爆器、降落伞等)显示子弹数量的错误。并删除了意外留下的测试输出。
脚本演示:
脚本代码分析:
祝您游戏愉快!
Минималистичный HUD
Продолжаю традицию скриптов, предназначенных в первую очередь для обучения скриптеров. На сей раз я создал в CLEO собственный HUD, который хоть и довольно прост, но отображает самые важные игровые показатели, а также может похвастаться такими особенностями:
• отключается при отключении через меню (не нужно зубрить кнопки включения/выключения скрипта и попусту задействовать клавиатуру)
• меняет цвет некоторых элементов в зависимости от их значений (например, часы становятся темнее с приближением ночи, а цвет числа патронов в магазине — ярче, если их становится мало)
• слегка смещает элементы при перемещении мышки/мини-джойстика.
Помимо вышеперечисленного, изучая код, вы сможете научиться:
• применять константы
• работать с адресами памяти
• использовать режим рисования (text_draw)
• выводить тексты рядом так, чтобы они не перекрывали друг друга
• считывать смещения мыши/мини-джойстика
• узнавать число патронов в магазине
• ставить одни значения в зависимость от других (и даже задействовать для этого нахождение синуса!)
• находить в памяти значение оставшегося кислорода
• находить в памяти счётчик «злости» полиции
• пользоваться scm-функциями
17.05.2020: исправлен недочёт, из-за которого у некоторых категорий оружия (детонатора, парашюта и т.п.) отображалось число патронов. И убрал случайно оставшуюся тестовую выдачу трости.
Демонстрация скрипта:
Разбор кода скрипта:
Приятной игры!