一个小试验,骰子游戏,没有UI

原创 2004年09月15日 16:37:00

游戏规则:参加游戏的玩家,每个人掷两次骰子.两次之和谁大的,谁就是赢家.
主要是试一下用UML的方法来做游戏,但总觉得Actor只有一个玩家,顶多也就是多个Timer.这个游比较简单也看不出来什么,不过熟悉一下做游戏的这道流程也是一种收获.

class Player
{
        private var name:String;
        private var score:Number;
        function Player(name:String)
        {
                this.name = name;
        }
        public function play(die1:Die, die2:Die):Void
        {
                die1.roll();
                die2.roll();
                score = die1.getFaceValue()+die2.getFaceValue();
        }
        public function getName():String
        {
                return name;
        }
        public function getScore():Number
        {
                return score;
        }
}

class Die
{
        private var faceValue:Number;
        public function getFaceValue():Number
        {
                return faceValue;
        }
        public function roll():Void
        {
                faceValue = int(Math.random() * 6 + 1);
        }
}

class DiceGame
{
        private var die1, die2:Die;
        private var player1,player2:Player;
        
        public function DiceGame(name1:String,name2:String)
        {
                player1 = new Player(name1);
                player2 = new Player(name2);
                die1 = new Die();
                die2 = new Die();
        }
        public function play():Void
        {
                player1.play(die1, die2);
                player2.play(die1, die2);
        }
        public function getWinner():Player
        {
                var score1:Number = player1.getScore();
                var score2:Number = player2.getScore();
                trace(score1+":"+score2);
                if (score1== score2)
                {
                        return null;
                }
                else
                {
                        return (score1> score2)?player1:player2;
                }
        }
        
        //程序入口
        public static function main():Void
        {
                var game:DiceGame = new DiceGame("小强","张立");
                game.play();
                var winner:Player =game.getWinner();
                if(winner!=null)
                trace(winner.getName()+"胜!");
        }
}
//main.fla
DiceGame.main();

untiy 网格的应用—骰子的制作和技能冷却效果

这节讲一个比较简单的网格的应用,其实网格的作用其实很大的,网格直接关联的渲染的问题,我们知道做一个ui需要网格,在unity显示一张图片同样需要网格。我们知道当我们拖一张sprite把它放进我scen...
  • u012565990
  • u012565990
  • 2016年07月20日 23:37
  • 1337

如果在 unity中滚动 3D 骰子

孙广东   2015.8.16目的:     这篇文章的主要目的是为了让您了解有关如果在 unity中滚动 3D 骰子                建设一个棋盘游戏   但因为骰子困扰   ;   ...
  • u010019717
  • u010019717
  • 2015年08月26日 08:21
  • 4291

运用css3 实现骰子3d旋转效果

css部分代码: .dice_box { width: 400px; height: 400px; position:relative; margin:0 auto; perspecti...
  • houpengfei111
  • houpengfei111
  • 2014年05月04日 10:24
  • 3773

骰子定位识别

引言一年前我还在上海从事过机器视觉软件的开发,时光荏苒。这是在公司期间做了一个有趣的项目,现讲一下其主要思想及如何实现。 先来看一下效果图,Look 嗯,看的出来,虽然背景光线不均匀,虽然骰子...
  • bluecol
  • bluecol
  • 2015年08月05日 00:12
  • 2299

CSS-3D之制作3D骰子

CSS-3D之制作3D骰子 css3 3d其实还是转换的一种,css3提供了2D转换,里面有位移、缩放、旋转、斜拉,这些个效果都是在2d平面上的效果。那么3d其实就是多了一个维度,也就是多了个坐标轴...
  • b1244154318
  • b1244154318
  • 2016年09月16日 12:36
  • 505

Java实现-骰子求和

扔 n 个骰子,向上面的数字之和为 S。给定 Given n,请列出所有可能的 S 值及其相应的概率。  注意事项 You do not care about the accuracy...
  • qq_14927217
  • qq_14927217
  • 2017年07月01日 12:50
  • 952

n个骰子个点数和出现的概率- 动态规划

题目:把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。 声明思想非原创!只因动态规划思想的使用很好,记下! 分析:动态规划就是分阶段考虑问题,给出变量...
  • gjh558
  • gjh558
  • 2016年09月02日 10:00
  • 401

用css3transform做出3D旋转的骰子

这个效果利用了3D旋转平移,主要的注意点是当一个面旋转以后他的xyz轴还得按照以前的xyz轴来做,他的xyz轴并不是开始时吧的xyz轴的方向,他的xyz轴也同时受到了旋转的影响而发生改变。所以可以先平...
  • sdfujichao
  • sdfujichao
  • 2016年07月08日 21:09
  • 1046

解题报告 之 2015蓝桥杯 垒骰子

赌圣 atm 晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体。 经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥! 我们先来规范一下骰子:1 的对面...
  • maxichu
  • maxichu
  • 2015年08月24日 00:44
  • 2908

css3制作色子

网友Adam‘分享用Aui-core+CSS3实用3D骰子JS特效 * { margin:0; padding:0; } body { background:#efefef; overflow...
  • kongjiea
  • kongjiea
  • 2014年09月19日 16:50
  • 1840
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个小试验,骰子游戏,没有UI
举报原因:
原因补充:

(最多只允许输入30个字)