飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 5460|回复: 3

小游戏-石头剪子布源码

[复制链接]

该用户从未签到

发表于 2011-5-17 01:17:51 | 显示全部楼层 |阅读模式
RockPaperScissorsLizardSpock2.jpg


  1. io.open();

  2. var 玩家得分 , 机器得分 = 0,0

  3. /*
  4. 剪刀剪布,布包石头,石头压死了蜥蜴,蜥蜴毒死了史波克,史波克踩碎了剪刀,剪刀斩首了蜥蜴,蜥蜴吃了布,
  5. 布(paper又意论文,引申为相对论)否定了史波克的存在,史波克融化了石头,石头砸碎了剪刀
  6. */
  7. var 游戏规则表 = {};
  8. 游戏规则表["石头"] = {["石头"]="平";["剪刀"]="赢";["布"]="输";["蜥蜴"]="赢";["史波克"]="输"};
  9. 游戏规则表["剪刀"] = {["石头"]="输";["剪刀"]="平";["布"]="赢";["蜥蜴"]="赢";["史波克"]="输"};
  10. 游戏规则表["布"] = {["石头"]="赢";["剪刀"]="输";["布"]="平";["蜥蜴"]="输";["史波克"]="赢"};
  11. 游戏规则表["蜥蜴"] = {["石头"]="输";["剪刀"]="输";["布"]="赢";["蜥蜴"]="平";["史波克"]="赢"};
  12. 游戏规则表["史波克"] = {["石头"]="赢";["剪刀"]="赢";["布"]="输";["蜥蜴"]="输";["史波克"]="平"};

  13. math.randomize(time.tick());
  14. var 机器随机出拳 = function(){
  15.     var 角色表 = {"石头";"剪刀";"布";"蜥蜴";"史波克"};
  16.     return 角色表[math.random(1,5)];
  17. }

  18. var 猜拳结果 = function( 玩家出拳 , 机器出拳){
  19.     var 结果 = 游戏规则表[玩家出拳][机器出拳];
  20.     select( 结果 ){
  21.         case "赢"
  22.             玩家得分 += 1;
  23.         case "输"
  24.             机器得分 += 1;
  25.     }

  26.     io.print("玩家出拳:",玩家出拳,"机器出拳:",机器出拳,'\n这次你'+结果+"了!")
  27. }

  28. io.print("石头 = o","剪刀 = x","布 = l","蜥蜴 = f","史波克 = w")
  29. io.print('输入q退出本次游戏!\n')

  30. 开始游戏 = function(){
  31.     while(true){
  32.         io.print("玩家得分:"+玩家得分 , "机器得分:"+机器得分+'\n')
  33.         if(玩家得分 >= 20 || 机器得分 >= 20) break;
  34.         io.print("请输入o或x或l或f或w或q:");

  35.         var strin = io.stdin.read();
  36.         if( #strin != 1) continue ;
  37.                
  38.         var 玩家出拳 = string.lower(strin);     
  39.         var 角色表 = {o="石头";x="剪刀";l="布";f="蜥蜴";w="史波克"};
  40.         
  41.         if(玩家出拳 = "q") break;
  42.         elseif(string.indexAny("oxlfw",玩家出拳))
  43.             猜拳结果( 角色表[玩家出拳] , 机器随机出拳());
  44.         else
  45.             io.print("无效输入,请重试!");
  46.     }

  47.     玩家得分 , 机器得分 = 0,0   
  48.     io.print("游戏结束!重玩一次请按r回车,退出请按其他任意键回车");
  49.     var 重玩还是退出 = string.lower(io.stdin.read());
  50.     if(重玩还是退出 = "r") return 开始游戏();
  51.     else  return;
  52. }

  53. 开始游戏();

  54. io.close();
复制代码


运行结果

nn.jpg


石头剪子布.zip (303.53 KB, 下载次数: 0)
PYG19周年生日快乐!

该用户从未签到

发表于 2011-5-17 09:03:08 | 显示全部楼层
呵呵!有意思,看看,谢谢分享!
PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-12-1 11:04
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    发表于 2011-5-17 10:00:22 | 显示全部楼层
    中文变量。。NX
    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2015-12-13 00:39
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2011-7-7 12:41:28 | 显示全部楼层
    C语言的呀?
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表