Coin.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. // FIXME
  2. keepAlive = typeof(keepAlive) == "undefined" ? [] : keepAlive;
  3. keepAlive.push(self);
  4. var glmatrix = require("gl-matrix");
  5. var vec2 = glmatrix.vec2;
  6. var node = self.node;
  7. var animationSet = cache.getResource("AnimationSet2D", "Sprites/GoldIcon.scml");
  8. var sprite = node.createComponent("AnimatedSprite2D");
  9. sprite.setAnimation(animationSet, "idle");
  10. sprite.setLayer(100);
  11. var activated = false;
  12. var body;
  13. self.onPlayerHit = function() {
  14. // sprite enabled is not removing the sprite
  15. node.scale2D = [0, 0];
  16. sprite.enabled = false;
  17. body.enabled = false;
  18. }
  19. function update(timeStep) {
  20. if (activated)
  21. return false;
  22. if (vec2.distance(cameraNode.position2D, node.position2D) < 3.0) {
  23. activated = true;
  24. body = node.createComponent("RigidBody2D");
  25. body.setBodyType(Atomic.BT_DYNAMIC);
  26. body.fixedRotation = true;
  27. var circle = node.createComponent("CollisionCircle2D");
  28. // Set radius
  29. circle.setRadius(.3);
  30. // Set density
  31. circle.setDensity(1.0);
  32. // Set friction.
  33. circle.friction = .2;
  34. // Set restitution
  35. circle.setRestitution(.8);
  36. }
  37. }