1234567891011121314151617181920212223242526272829303132333435363738394041 |
- import { _decorator, Color, Component, Label, Node, Sprite, Widget } from 'cc';
- import { IGamePlayer } from '../../module_basic/shared/protocols/public/game/GameTypeDef';
- import { UserMgr } from '../../module_basic/scripts/UserMgr';
- import { ModuleDef } from '../../scripts/ModuleDef';
- import { GenderIcon } from '../scripts/GenderIcon';
- import { IUserData } from '../shared/types/RoomData';
- import { SpriteUtils } from '../scripts/SpriteUtils';
- const { ccclass, property } = _decorator;
- const tempColor = new Color();
- @ccclass('GameWinnerPlayerItem')
- export class GameWinnerPlayerItem extends Component {
- @property(Sprite) bg:Sprite;
- @property(Node) emptySkin:Node;
- @property(Sprite) sprSkin:Sprite;
- @property(Sprite) sprHeadIcon:Sprite;
- @property(Label) lblUserName:Label;
- @property(Label) lblRoleName:Label;
- @property(GenderIcon) gender:GenderIcon;
- async setPlayer(player:IGamePlayer,user:IUserData){
- this.lblUserName.string = user.name;
- SpriteUtils.setUserIcon(this.sprHeadIcon, user.visualId);
- this.lblRoleName.string = player.roleName;
- this.emptySkin.active = true;
- Color.fromUint32(tempColor, player.color | 0xff000000);
- this.bg.color = new Color(player.color);
- SpriteUtils.setTeamSkin(this.sprSkin, player.teamId);
- this.gender.setGender(user?.gender);
- this.lblUserName.updateRenderData(true);
- this.lblUserName.node.children.forEach(v=>{
- v.getComponent(Widget).updateAlignment();
- });
- }
- }
|