怎么用html5模拟3d掷骰子效果

怎么用html5模拟3d掷骰子效果,第1张

html5模拟3d掷骰子代码如下:

1 <!DOCTYPE>

2 <html>

3 <title>柯乐义</title>

4 <head>

5 <script>

6 var leftX = 150

7 var topY = 100

8 var diceX = 80

9 var diceY = 80

10 var dotR = 4

11 var count = 0

12 var lastNum = 0

13 var flag = false

14

15 function clickMe() {

16 count = 0

17 if(flag) {

18 return false

19 }

20 flag = true

21 var ctx = document.getElementById("canvas").getContext('2d')

22 ctx.beginPath()

23 //ctx.arc(100,100,50,0,Math.PI,false)

24 ctx.strokeRect(leftX,topY,diceX,diceY)

25

26setTimeout(function(){

27 random(ctx)

28},200)

29

30 }

31

32 function drawDice(ctx,randomNum) {

33 ctx.clearRect(leftX,topY,diceX,diceY)

34 switch(randomNum) {

35 case 1:

36 draw1()

37 break

38 case 2:

39 draw2()

40 break

41 case 3:

42 draw3()

43 break

44 case 4:

45 draw4()

46 break

47 case 5:

48 draw5()

49 break

50 case 6:

51 draw6()

52 break

53 }

54 count++

55 if(count>=20) {

56 if(randomNum==6) {

57 alert("哇!你走狗屎运啦,今天可以去买彩票啦")

58 } else if(randomNum <=3) {

59 alert("今天运气不太好哦!再试一把")

60 } else {

61 alert("请再接再厉,在来一把")

62 }

63 flag = false

64 return false

65 } else {

66 setTimeout(function(){

67 random(ctx)

68},200-count)

69 }

70 }

71

72 function random(ctx) {

73 var randomNum = Math.floor(Math.random()*6)+1

74 if(randomNum == lastNum) {

75 random(ctx)

76 } else {

77 lastNum = randomNum

78 drawDice(ctx,randomNum)

79 }

80

81 }

82

83 function commonDraw(ctx,dotX,dotY) {

84 ctx.beginPath()

85 ctx.arc(dotX,dotY,dotR,0,2*Math.PI,false)

86 ctx.stroke()

87 ctx.fill()

88 }

89

90 function draw1() {

91 var ctx = document.getElementById("canvas").getContext('2d')

92 ctx.fillStyle="#0000ff"

93 var dotX = leftX+diceX/2

94 var dotY = topY+diceY/2

95 commonDraw(ctx,dotX,dotY)

96 }

97

98 function draw2() {

99 var ctx = document.getElementById("canvas").getContext('2d')

100 ctx.fillStyle="#99FF66"

101 var dotX = leftX+4*dotR

102 var dotY = topY+4*dotR

103 commonDraw(ctx,dotX,dotY)

104 var dotX = leftX+diceX-4*dotR

105 var dotY = topY+diceY-4*dotR

106 commonDraw(ctx,dotX,dotY)

107 }

108

109 function draw3() {

110 draw1()

111 draw2()

112 }

113

114 function draw4() {

115 draw2()

116 var ctx = document.getElementById("canvas").getContext('2d')

117 ctx.fillStyle="#99CC00"

118 var dotX = leftX+diceX-4*dotR

119 var dotY = topY+4*dotR

120 commonDraw(ctx,dotX,dotY)

121 var dotX = leftX+4*dotR

122 var dotY = topY+diceY-4*dotR

123 commonDraw(ctx,dotX,dotY)

124 }

125

126 function draw5(){

127 draw1()

128 draw4()

129 }

130 //http://www.cnblogs.com/sosoft/

131 function draw6(){

132 var ctx = document.getElementById("canvas").getContext('2d')

133 ctx.fillStyle="#996633"

134 var dotX = leftX+4*dotR

135 var dotY = topY+diceY/2

136 commonDraw(ctx,dotX,dotY)

137 var dotX = leftX+diceY-4*dotR

138 commonDraw(ctx,dotX,dotY)

139 draw4()

140 }

141

142 function init() {

143 var ctx = document.getElementById("canvas").getContext('2d')

144 ctx.beginPath()

145 ctx.strokeRect(leftX,topY,diceX,diceY)

146 ctx.stroke()

147 draw6()

148

149 }

150 </script>

151 </head>

152

153 <body onload="init()">

154 <canvas id="canvas" width="400" height="300" style="background-color:#CCFFCC">

155 your brower is not support html5

156 </canvas>

157

158 <input type="button" value="掷骰子" onclick="clickMe()"/>

159 </body>

160 </html>

1、把麻将机上骰子拿出来,放到磁圈一或麻将机专用牌检验一下,看骰子是否带磁性,若是,则可断定为程序骰子。此时,只要交骰子换个不带磁的进去即可破除控制。

2、在开局前要以把麻将牌与别的麻将机上的牌进行调换即破除程序控制,除非对方交所有麻将机的牌都经过特殊处理,否则程序将不会起到作用。

3、当怀疑有程序,但是又不便说量,可以将自己身前的牌进行调换,将最左调到最右边,反之亦可,这样可预防75%的作弊情况。

麻将的骰子是由一付两粒组成的。每粒有六个面,由一到六点组成,共12个点。掷骰子是同时把两粒甩出去,先看两粒骰子的总和点确定方位,也就是在哪一方拿牌。

例如:

1、2下,3对,4反,5自得,6顺,7对,8反,9在首,10顺,11对,12大反,其中5,9点在自己这方拿牌,2,6,10点在下手方拿牌,3,7,11点在对方拿牌,4,8,12点在上手也就是左手方拿牌;

2、2点,每粒上面分别为一点,在下手牌的左手开始数出一墩牌不拿,从2和3墩一起拿,每次拿两墩,四人依次拿满三次为12只牌,然后由庄家开始再每人摸一只牌共为13只牌,再由庄家开始摸牌打牌;

3、一粒为3,一粒为4,在切牌时去掉小色点3墩不拿便可,依此类推。

麻将的骰子是由一付两粒组成的。每粒有六个面,由一到六点组成,共12个点。掷骰子是同时把两粒甩出去,先看两粒骰子的总和点确定方位,也就是在哪一方拿牌。

例如:

1、2下,3对,4反,5自得,6顺,7对,8反,9在首,10顺,11对,12大反,其中5,9点在自己这方拿牌,2,6,10点在下手方拿牌,3,7,11点在对方拿牌,4,8,12点在上手也就是左手方拿牌;

2、2点,每粒上面分别为一点,在下手牌的左手开始数出一墩牌不拿,从2和3墩一起拿,每次拿两墩,四人依次拿满三次为12只牌,然后由庄家开始再每人摸一只牌共为13只牌,再由庄家开始摸牌打牌;

3、一粒为3,一粒为4,在切牌时去掉小色点3墩不拿便可,依此类推。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7030365.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-31
下一篇 2023-03-31

发表评论

登录后才能评论

评论列表(0条)

保存