中文编程入门(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 战术布局内部嵌入更深层次的判断和策略部署,让代码操控的角色如同一个灵活多变、进退有序的战队,共同演绎出一场精密而激烈的团战乐章。
相关推荐
炸薯条!12 小时前
博客系统测试报告
开发语言·lua
BuHuaX2 天前
Lua 与 ToLua:运行机制及热更新原理
开发语言·unity·junit·c#·lua
努力努力再努力wz3 天前
【Lua 入门系列】模块与包(一):从多文件组织到require 运行时加载机制、模块缓存、预加载搜索与 Lua 文件搜索机制
开发语言·junit·lua
UWA3 天前
多人战斗中Lua持续高耗时,是瞬时峰值还是高频调用在作祟
性能优化·lua·游戏开发
努力努力再努力wz3 天前
【Lua 入门系列】从执行模型到事件驱动:一文理解 Lua 有栈协程、挂起恢复与协作式调度
开发语言·lua
努力努力再努力wz4 天前
【Lua 入门系列】Lua数据结构:从 Table 出发,一文串联数组、链表、栈、队列、集合、映射与树的实现原理
数据结构·链表·lua
努力努力再努力wz4 天前
【Lua入门系列】从 Table 到元表与元方法:一文理解 Lua 的行为扩展机制
开发语言·junit·lua
麻瓜code5 天前
秒杀优化三连:Lua + 阻塞队列 + Redis Stream,响应从 3.4 秒到毫秒级
redis·junit·lua
努力努力再努力wz5 天前
【Lua 入门系列】Lua 函数深入理解:函数对象、多返回值、可变参数、闭包、递归与尾调用优化
开发语言·lua
hey you~5 天前
云呼叫中心坐席自动分配实战:ACD 策略、Redis+Lua 实现与排查清单
数据库·redis·lua·云呼叫中心·acd·坐席分配·坐席状态机