中文编程入门(Lua5.4.6中文版)第四章 Lua 流程控制

Lua 编程语言中的流程控制就像推塔游戏战场上的智谋队长,挥舞着策略之剑,根据战场局势(条件语句)的演变,精准地指挥团队成员执行或猛攻或防守的操作。在这场代码与逻辑的对战中,当判定条件亮起 "true" 的胜利信号时,指定的战术动作会被果断地施展,类似"全军出击";反之,若收到"false"或"nil"的撤退信号,则会迅速调整为备用作战计划,类似"撤退,有埋伏"。

全军出击

复制代码
--[ 智谋队长,挥舞着策略之剑 ]
如果(我方形成包围 与 敌方阵形散乱)
即
    输出("全军出击!")
结束

撤退,有埋伏

复制代码
--[ 智谋队长,挥舞着策略之剑 ]

如果(敌方没有出现)

--[当发现李白往这个方向走时,如果就不成立,转到执行否则的信号。

即
    输出("我在查草,请小心!")        
否则
    输出("守约,撤退,撤退,撤退,")
结束

在 Lua 的游戏世界里,决策的法则颇具特色:0 这个数字英雄虽看似无攻击力,却也能作为战斗指令的有效依据,只要它存在,便意味着"真"的判断。就像是辅助的探草行为。例如:

复制代码
--[ 即使是0,也算是参与战斗的信号 ]
如果(0)
即
    输出("即便是零伤害输出,0也能探个草皮!")
结束

运行这段代码,屏幕上将会显示一行提示:"即便是零伤害输出,0也能探个草皮!"

Lua 为编程玩家提供了丰富的战略工具(流程控制结构),以帮助你在游戏脚本设计中运筹帷幄:

语句 描述
if 语句 if 语句:担任基础指挥官角色,根据战场实际情况(布尔表达式的结果)来决定是否发动特定的技能组合(执行相应代码块)
if...else 语句 好比拥有双形态切换能力的英雄,在主攻击方案(if 条件)失效时,队长会立即启动备用计划(else 语句部分),确保队伍应对各种突发状况游刃有余。
if 嵌套语句 犹如多层策应战术,你可以在已有的 if 或 else if 战术布局内部嵌入更深层次的判断和策略部署,让代码操控的角色如同一个灵活多变、进退有序的战队,共同演绎出一场精密而激烈的团战乐章。
相关推荐
qq_322762755 小时前
一个接口从能用到稳定,中间差的到底是什么
服务器·开发语言·lua·接口·fastapi·请求
呆呆敲代码的小Y2 天前
【游戏开发】Lua 与 C# 交互原理解析
c#·lua·交互·热更新·lua与c#交互·游戏热更新
呆呆敲代码的小Y2 天前
Lua 上值(UpValue)
开发语言·junit·lua·lua上值·upvalue
呆呆敲代码的小Y2 天前
【游戏开发】xLua 性能优化技巧
junit·性能优化·lua·xlua
曼巴UE52 天前
Unlua UE5.3 调试
ue5·lua·unlua
nvd113 天前
实战:用 Lua 手写 Kong 安全鉴权插件并通过 ArgoCD GitOps 零编译部署到 DbGate 服务
安全·lua·kong
攻城有术4 天前
专项攻克——redis分布式锁-用LUA脚本解决setNX锁不释放问题
redis·分布式·lua
肠畔码农10 天前
底层视角拆解:Redis Lua脚本原子性、主线程阻塞与主从不一致全解析
java·redis·lua
小的~~12 天前
面试被问懵了?为什么 Redis 单线程还能保证 Lua 脚本原子性,却偏偏选了 Lua?
redis·面试·lua
難釋懷13 天前
Nginx-Lua
nginx·junit·lua