我用shell写了个mud游戏:武林群侠传 (3)

初始战力值为0,初始等级为0,当前生命值是最大生命值-扣除生命值。
每次战斗失败都扣除一点生命值

# 战力值 GLOBAL_POWER=0 # 名字 GLOBAL_NAME='少侠' # 等级 GLOBAL_LEVEL=0 # 生命,初始生命值10点,下个版本规划:每升一级,最大生命值=10+等级*5 GLOBAL_LIFE=10 GLOBAL_LIFE_MAX=10 # 已扣除生命值 GLOBAL_LIFE_DEDUCT=0 # 战斗回合 GLOBAL_COUNT=1 3、定义段位对应的随机敌人与武功 function loadData() { # Lv0 对手:1、小兵甲;2、明教教众;3、黄河四鬼; #declare -A map0 #map0=(["1"]="小兵甲" ["2"]="明教教众" ["3"]="黄河四鬼" ) LEVEL_0_AI=("小兵甲" "明教教众" "黄河四鬼") LEVEL_0_KongFu=("野球拳" "排云掌" "风神腿") LEVEL_1_AI=("兵丁头目" "天地会青木堂成员" "沙船帮舵主") LEVEL_1_KongFu=("野球拳Lv2" "葵花点穴手" "十三太保横练神功") LEVEL_2_AI=("锦衣卫" "天地会青木堂香主" "沙船帮长老") LEVEL_2_KongFu=("野球拳Lv3" "葵花宝典" "紫霞神功") LEVEL_3_AI=("锦衣卫伍长" "黑白双煞" "沙船帮帮主") LEVEL_3_KongFu=("野球拳Lv4" "三分归元气" "独孤九剑") LEVEL_4_AI=("锦衣卫百户" "铁拳无敌归辛树" "天地会陈近南") LEVEL_4_KongFu=("野球拳Lv5" "吸星大法" "脚底抹油") LEVEL_5_AI=("锦衣卫千户" "燕子坞慕容复" "金蛇郎君") LEVEL_5_KongFu=("野球拳Lv6" "斗转星移" "神行百变") LEVEL_6_AI=("右军统领" "鸠摩智" "铁掌帮裘千仞") LEVEL_6_KongFu=("野球拳Lv7" "天山折梅手" "一阳指") LEVEL_7_AI=("左军统领" "大理段誉" "战神乔峰") LEVEL_7_KongFu=("野球拳Lv8" "六脉神剑" "少林般若掌") LEVEL_8_AI=("柱国大将军" "中神通王重阳" "老顽童周伯通") LEVEL_8_KongFu=("野球拳Lv9" "战神图录" "左右互搏术") LEVEL_9_AI=("黄裳" "逍遥子" "武当张三丰") LEVEL_9_KongFu=("野球拳Lv10" "乾坤大罗移" "降龙十八掌") } 4、定义段位对应的文字 # 判断战力值 function levelEcho() { getLevel # 计算战力等级 # echo "GLOBAL_POWER: $GLOBAL_POWER" # echo "GLOBAL_LEVEL: $GLOBAL_LEVEL" case $GLOBAL_LEVEL in 0) # GLOBAL_ECHO="【Lv0 战五渣】您还需继续磨练!" # echoUtil echo "【Lv0 战五渣】您还需继续磨练!" ;; 1) # GLOBAL_ECHO="【Lv1 初出茅庐】您已不再是战五渣,继续努力!" # echoUtil echo "【Lv1 初出茅庐】您已不再是战五渣,继续努力!" ;; 2) echo "【Lv2 小试牛刀】您小试牛刀,便已在江湖上打出了名号!" ;; 3) echo "【Lv3 锋芒毕露】江湖上已经有你的一席之地!" ;; 4) echo "【Lv4 声名鹊起】随着你行侠仗义,在江湖中积极奔走,已经有了侠少的名号!" ;; 5) echo "【Lv5 名动江湖】江湖中多年奔波,凡是江湖人,已无人不知、无人不晓您的名号!" ;; 6) echo "【Lv6 一代宗师】您经过多年磨练,功法大成,声望日隆,终成一代宗师!" ;; 7) echo "【Lv7 武林盟主】经多派掌门推举,你当仁不让,成为武林盟主,号令天下!" ;; 8) echo "【Lv8 隐士高人】您已尝过世间繁华,厌倦武林诡谲、尔虞我诈,因此金盆洗手,退隐山林!" ;; 9) echo "【Lv9 江湖传说】您虽已不在江湖,但江湖永远流传着你的传说!" ;; *) # echo -e "\033[91m 江湖险恶,少侠请重新来过! \033[0m" GLOBAL_ECHO=" 江湖险恶,少侠请重新来过!" echoUtil ;; esac } 5、战斗计算

1)获得随机对手

cur_AI_str=LEVEL_${GLOBAL_LEVEL}_AI[$index_AI] # echo "cur_AI:$cur_AI" cur_AI=${!cur_AI_str} GLOBAL_ECHO="你的对手【${cur_AI}】已出现,对方已经开始发起攻击"

2) 输入招式

read -p "请出招反击:【1、${!cur_kongfu0},2、${!cur_kongfu1},3、${!cur_kongfu2}】,请输入 0~2 这3个数字选择武功:" kongfu

3) 获取功夫名

cur_k_0=LEVEL_${GLOBAL_LEVEL}_KongFu[$kongfu]

4 ) 战斗胜利,增加经验值、战力值

let GLOBAL_POWER+=3 # 加速战力值增长

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpwpgf.html