LoadingDeprecated.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import { _decorator, Component, Node, Button, Label } from "cc";
  2. import BaseUI from "./base/BaseUI";
  3. import { WalletListener, WalletManager } from "./web3/WalletManager";
  4. import { Web3Networks } from "./web3/Web3Networks";
  5. import { ContractManager } from "./web3/ContractManager";
  6. const { ccclass, property } = _decorator;
  7. @ccclass("LoadingDeprecated")
  8. export class LoadingDeprecated extends BaseUI implements WalletListener {
  9. onLoginSuccess(account: string, balance: number): void {
  10. let info = `登录成功\n地址:${account}\n余额:${balance}`;
  11. this.log(info);
  12. }
  13. OnWalletDisconnected(): void {
  14. this.log("钱包断开连接");
  15. this.FindNode("btn_connect").active = true;
  16. }
  17. @property(Button)
  18. loginButton: Button = null!;
  19. start() {
  20. WalletManager.ins.init(this);
  21. }
  22. async connect() {
  23. WalletManager.ins.open();
  24. }
  25. async disconnect() {
  26. WalletManager.ins.disconnect();
  27. }
  28. protected onBtnClick(name: string, event: Event, customEventData: any): void {
  29. switch (name) {
  30. case "btn_disconnect":
  31. this.disconnect();
  32. break;
  33. case "btn_connect":
  34. this.connect();
  35. break;
  36. case "btn_kaia":
  37. WalletManager.ins.switchNetwork(Web3Networks.kaia);
  38. this.log("切换到kaia");
  39. break;
  40. case "btn_base":
  41. WalletManager.ins.switchNetwork(Web3Networks.base);
  42. this.log("切换到base");
  43. break;
  44. case "btn_zp_balance":
  45. ContractManager.ins.getZPBalance();
  46. break;
  47. }
  48. }
  49. private log(msg: string) {
  50. this.setText("log_text", msg);
  51. }
  52. }