Water.ts 858 B

1234567891011121314151617181920212223242526272829303132
  1. import { _decorator, BoxCollider2D, Button, CircleCollider2D, Collider2D, Color, Component, Enum, find, Node, NodeEventType, Sprite } from 'cc';
  2. import { WaterColorHex, WaterColors } from '../TakeGobletGlobalInstance';
  3. const { ccclass, property, executeInEditMode } = _decorator;
  4. @ccclass('Water')
  5. @executeInEditMode
  6. export class Water extends Component {
  7. private _color: WaterColors = WaterColors.Blue;
  8. @property({ type: Enum(WaterColors) })
  9. get color() {
  10. return this._color;
  11. }
  12. set color(value: WaterColors) {
  13. this._color = value;
  14. this.updateColor();
  15. }
  16. @property(Sprite)
  17. private sprite: Sprite = null!;
  18. private updateColor() {
  19. if (this.sprite) {
  20. this.sprite.color = new Color(WaterColorHex[this._color]);
  21. }
  22. }
  23. start() {
  24. this.updateColor();
  25. }
  26. }