Score.js 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. function Score() {
  2. base(this,LSprite,[]);
  3. this.init();
  4. }
  5. Score.prototype.init = function() {
  6. var self = this;
  7. self.hooksNumber = HOOKS_NUMBER;
  8. self.score = 0;
  9. var scoreBoardBitmapData = new LBitmapData(dataList["score_board"],0,0,258,58);
  10. var scoreBoardBitmap = new LBitmap(scoreBoardBitmapData);
  11. scoreBoardBitmap.x = 374;
  12. scoreBoardBitmap.y = 85;
  13. self.addChild(scoreBoardBitmap);
  14. var theTextField = new LTextField();
  15. theTextField.color = "#ffffff";
  16. theTextField.size = 20;
  17. theTextField.x = 410;
  18. theTextField.y = 100;
  19. theTextField.weight = "bolder";
  20. theTextField.font = "黑体";
  21. self.theTextField = theTextField;
  22. self.addChild(theTextField);
  23. self.hooks = new LSprite();
  24. self.scoreHookBitmapData = new LBitmapData(dataList["score_hook"],0,0,42,78);
  25. self.addChild(self.hooks);
  26. // self.sFace = new LSprite();
  27. // self.faceNormalBitmapData = new LBitmapData(dataList["face_normal"],0,0,0,0);
  28. // self.faceHappyBitmapData = new LBitmapData(dataList["face_happy"]);
  29. // self.faceSadBitmapData = new LBitmapData(dataList["face_sad"]);
  30. // self.faceBitmap = new LBitmap(self.faceNormalBitmapData);
  31. // self.sFace.x = 80;
  32. // self.sFace.y = 35;
  33. // // self.sFace.scaleX = 0.5;
  34. // // self.sFace.scaleY = 0.5;
  35. // self.sFace.addChild(self.faceBitmap);
  36. // self.addChild(self.sFace);
  37. gScore = self.score;
  38. self.showScore(self.score);
  39. self.showHooks(self.hooksNumber);
  40. self.setFace("normal");
  41. };
  42. Score.prototype.addScore = function(stype, fish) {
  43. var self = this;
  44. var getScore = 0;
  45. if(stype == "l") {
  46. getScore = 100;
  47. } else if(stype == "m") {
  48. getScore = 300;
  49. } else if(stype == "s") {
  50. getScore = 500;
  51. }
  52. self.score += getScore;
  53. self.showScoreTips(getScore, fish);
  54. gScore = self.score;
  55. self.showScore(self.score);
  56. self.setFace("happy");
  57. }
  58. Score.prototype.addHook = function(number) {
  59. var self = this;
  60. self.hooksNumber += number;
  61. self.showHooks(self.hooksNumber);
  62. if(self.hooksNumber <= 0) {
  63. gameOver();
  64. }
  65. if(number < 0) {
  66. self.setFace("sad");
  67. }
  68. }
  69. Score.prototype.showScoreTips = function(score, fish) {
  70. var self = this;
  71. var scoreTips = new LTextField();
  72. scoreTips.color = "#fffd71";
  73. scoreTips.size = 30;
  74. scoreTips.x = fish.x;
  75. scoreTips.x = Util.correctInRange(fish.x, 100, LGlobal.width-100);
  76. scoreTips.y = fish.y;
  77. scoreTips.text = "+" + score;
  78. scoreTips.weight = "bolder";
  79. scoreTips.font = "黑体";
  80. scoreTips.textAlign = "center";
  81. self.parent.addChild(scoreTips);
  82. LTweenLite.to(scoreTips, 0.5, {size:50, ease:LEasing.Sine.easeInOut, onComplete:function() {
  83. self.parent.removeChild(scoreTips);
  84. }});
  85. }
  86. Score.prototype.showScore = function(score) {
  87. var self = this;
  88. var s = "分数:" + score.toString();
  89. self.theTextField.text = s;
  90. }
  91. Score.prototype.showHooks = function(number) {
  92. var self = this;
  93. var originalHooksNumber = self.hooks.childList.length;
  94. if(number > originalHooksNumber) {
  95. for(var i = 0; i < number-originalHooksNumber; i++) {
  96. var scoreHookBitmap = new LBitmap(self.scoreHookBitmapData);
  97. scoreHookBitmap.x = LGlobal.width-(i+originalHooksNumber+1)*(self.scoreHookBitmapData.width*1.2);
  98. scoreHookBitmap.y = 0;
  99. self.hooks.addChild(scoreHookBitmap);
  100. }
  101. } else if(number < originalHooksNumber) {
  102. for(var i = 0; i < originalHooksNumber-number; i++) {
  103. Util.fadeOut(self.hooks.childList[self.hooks.childList.length-1], 1, function() {
  104. self.hooks.removeChildAt(self.hooks.childList.length-1);
  105. });
  106. }
  107. }
  108. }
  109. Score.prototype.setFace = function(stype) {
  110. // var self = this;
  111. // if(self.setFaceTimeout) {
  112. // clearTimeout(self.setFaceTimeout);
  113. // self.setFaceTimeout = null;
  114. // }
  115. // if(stype == "happy") {
  116. // self.faceBitmap = new LBitmap(self.faceHappyBitmapData);
  117. // } else if(stype == "sad") {
  118. // self.faceBitmap = new LBitmap(self.faceSadBitmapData);
  119. // } else {
  120. // self.faceBitmap = new LBitmap(self.faceNormalBitmapData);
  121. // }
  122. // self.sFace.removeAllChild();
  123. // self.sFace.addChild(self.faceBitmap);
  124. // if(stype != "normal") {
  125. // self.setFaceTimeout = setTimeout(function() {
  126. // self.setFace.call(self, "normal");
  127. // }, 2000);
  128. // }
  129. }