zj1d 发表于 2021-2-20 11:26

【中文AHK】全中文 100行代码 做一个点杀泰坦~

本帖最后由 zj1d 于 2021-2-20 11:26 编辑

{:301_996:}大家好呀 新年第一鱼
简单介绍一下ahk的特殊语法
按键名::操作      :: 表示按下对应按键 执行后面操作 比如 F1::重载()表示按下 F1键 重新载入脚本变量:=赋值      := 赋值符号 与其他语言不同 单独一个=没有赋值功能 ,所有赋值操作要用 :=函数 参数1,参数2    省略括号简写相当于    函数(参数1,参数2)注意 每行代码只有第一个函数可以省略括号其他方面和大部分语言语法通用~(比如我随便选了一个语法高亮 就能正确显示)

脚本执行器在 https://www.52pojie.cn/thread-1369222-1-1.html

软件成品在 https://zj1d.lanzouj.com/iuAe6lvsioh

游戏很简单 砍怪 升级 加点 砍更多的怪~
(怪物的防御属性其实没用上~
F1::重载()
全局 主界面,当前怪物,当前玩家,剩余血量
主界面:=界面.新建()
主界面.添加进度条("宽210 色ff0000 名血条 ",100)
主界面.添加组合框("宽100 高75 名怪物属性 ","怪物属性")
主界面.添加("文本","横上+5 纵上+15 宽88 名怪物经验 ","怪物经验:")
主界面.添加("文本","横上 纵上+15 宽88 名怪物等级 ","怪物等级:")
主界面.添加("文本","横上 纵上+15 宽88 名怪物血量 ","怪物血量:")
主界面.添加("文本","横上 纵上+15 宽88 名怪物防御 ","怪物防御:")
主界面.添加("文本","横上 纵上+15 宽88 名技能点数 ","技能点数:")
主界面.添加组合框("宽100 高100 横120 纵31 名玩家属性","玩家属性")
主界面.添加("文本","横上+5 纵上+15 宽88 名玩家经验","玩家经验:")
主界面.添加("文本","横上 纵上+15 宽88 名玩家等级","玩家等级:")
主界面.添加("文本","横上 纵上+15 宽88 名玩家攻击","玩家攻击:")
主界面.添加("文本","横上 纵上+15 宽88 名玩家攻速","玩家攻速:")
主界面.添加文本("横上 纵上+15 宽88 名击杀数量","击杀数量:")
主界面.添加按钮("横边 ","加攻击").监听事件("点击","加攻击")
主界面.添加按钮("纵上 ","加攻速").监听事件("点击","加攻速")
主界面.添加按钮("纵上 宽90 高50","砍一刀").监听事件("点击","砍")
主界面.监听事件("关闭","退出应用")
主界面.显示("不激活")


当前玩家:=对象.新建()
当前玩家.等级:=1
当前玩家.经验:=0
当前玩家.攻击:=5
当前玩家.攻速:=0.5
当前玩家.击杀:=0
当前玩家.技能点:=0
当前玩家.升级经验:=200
设置定时器 "更新主界面",50
生成怪物(1)


设置定时器 "砍", 四舍五入(1/当前玩家.攻速)*1000
更新主界面(){
      如果 当前怪物{
                主界面['怪物血量'].文本:="怪物血量:" 当前怪物.血量
                主界面['怪物经验'].文本:="怪物经验:" 当前怪物.经验
                主界面['怪物防御'].文本:="怪物防御:" 当前怪物.防御
                主界面['怪物等级'].文本:="怪物等级:" 当前怪物.等级
                主界面['玩家经验'].文本:="玩家经验:" 当前玩家.经验
                主界面['玩家攻击'].文本:="玩家攻击:" 当前玩家.攻击
                主界面['玩家攻速'].文本:="玩家攻速:" 当前玩家.攻速
                主界面['玩家等级'].文本:="玩家等级:" 当前玩家.等级
                主界面['击杀数量'].文本:="击杀数量:" 当前玩家.击杀
                主界面['技能点数'].文本:="技能点数:" 当前玩家.技能点
                主界面["血条"].值:= 四舍五入( 剩余血量/当前怪物.血量 * 100 )
      }否则
                生成怪物(随机数(1,11))
      }
加攻击(a,b){

      如果 当前玩家.技能点{
                当前玩家.技能点--
                当前玩家.攻击+=5
      }
}
加攻速(a,b){

      如果 当前玩家.技能点{
                当前玩家.技能点--
                当前玩家.攻速+=0.3
                当前玩家.攻速:=四舍五入(当前玩家.攻速,1)
                设置定时器 "砍", 四舍五入(1/当前玩家.攻速*1000)
      }
}

砍(a:=0,b:=0){
      剩余血量-= 随机数(当前玩家.攻击/2,当前玩家.攻击)
      如果 剩余血量<=0{
                剩余血量:=0
                当前玩家.经验+=当前怪物.等级*50
                生成怪物(当前玩家.等级)
                当前玩家.击杀++
                如果 当前玩家.经验>=当前玩家.升级经验
                        玩家升级()
      }
}

玩家升级(){
      当前玩家.等级++
      当前玩家.技能点++
      当前玩家.升级经验:=当前玩家.经验+当前玩家.等级*50*5
}
生成怪物(等级){
      当前怪物:=对象.新建()
      当前怪物.经验:=等级*50
      当前怪物.血量:=随机数(10,等级*50)
      当前怪物.等级:=等级
      当前怪物.防御:=随机数(0,等级)
      剩余血量:=当前怪物.血量

}

6967632632 发表于 2021-2-20 11:40

大神出品 超牛~~~

wushaobao 发表于 2021-2-20 12:56

这是什么游戏

baxk22 发表于 2022-10-8 11:53

这么久的可以回?
页: [1]
查看完整版本: 【中文AHK】全中文 100行代码 做一个点杀泰坦~