123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- import { _decorator, Component, Node, SpriteComponent, LabelComponent, ButtonComponent, loader, SpriteFrame } from 'cc';
- import { NoticeManager } from '../../../engines/notices/NoticeManager';
- import StringUtils from '../../../engines/utils/StringUtils';
- import { PlatformManager } from '../../../Platform/PlatformManager';
- import GameConfigManager from '../../models/GameConfigManager';
- import { GameModel } from '../../models/GameModel';
- const { ccclass, property } = _decorator;
- @ccclass('FenceItemRenderScript')
- export class FenceItemRenderScript extends Component {
- @property({
- type:SpriteComponent
- })
- icon:SpriteComponent=null;
- @property({
- type:LabelComponent
- })
- hpLabel:LabelComponent=null;
- @property({
- type:LabelComponent
- })
- nameLabel:LabelComponent=null;
- @property({
- type:ButtonComponent
- })
- freeBuyButton:ButtonComponent=null;
- @property({
- type:LabelComponent
- })
- freeBuyButtonLabel:LabelComponent=null;
- @property({
- type:ButtonComponent
- })
- diamondBuyButton:ButtonComponent=null;
- @property({
- type:LabelComponent
- })
- diamondBuyButtonLabel:LabelComponent=null;
- @property({
- type:ButtonComponent
- })
- GlodBuyButton:ButtonComponent=null;
- @property({
- type:LabelComponent
- })
- GlodBuyButtonLabel:LabelComponent=null;
- private data:any;
- start () {
- // Your initialization goes here.
- }
- UpdateItemRender(data:any):void{
- this.data=data;
- let config:any=GameConfigManager.GetFenceConfig(data.id);
- //图标
- loader.loadRes(config.icon+"/spriteFrame",SpriteFrame,(err:Error,asset:SpriteFrame)=>{
- if(err!=null){
- console.log("加载图标出错:"+config.icon);
- return;
- }
- this.icon.spriteFrame=asset;
- })
- //等级
- this.hpLabel.string="HP:"+config.hp.toString();
- //名称
- this.nameLabel.string=config.name;
- let price:number;
- if(data.id<=GameModel.single.currentFenceId){
- this.freeBuyButton.node.active=this.diamondBuyButton.node.active=this.GlodBuyButton.node.active=false;
- }else{
- //buyType 购买方式 0金币购买 1宝石购买 2看广告购买
- if(data.buyType==0){//金币购买
- this.freeBuyButton.node.active=this.diamondBuyButton.node.active=false;
- this.GlodBuyButton.node.active=true;
- price=config.buyConsume;
- this.GlodBuyButtonLabel.string=StringUtils.numberUtilsEn(price);
- }else if(data.buyType==1){//宝石购买
- this.freeBuyButton.node.active=this.GlodBuyButton.node.active=false;
- this.diamondBuyButton.node.active=true;
- price=config.buyConsume;
- this.diamondBuyButtonLabel.string=StringUtils.numberUtilsEn(price);
- }else{//广告购买
- this.diamondBuyButton.node.active=this.GlodBuyButton.node.active=false;
- this.freeBuyButton.node.active=true;
- }
- }
- }
- /**
- * 金币购买
- */
- GlodBuy():void{
- if(this.BuyFence()){
- NoticeManager.ShowPrompt("购买成功。");
- }
- }
- /**
- * 钻石购买
- */
- DiamondBuy():void{
- if(this.BuyFence()){
- NoticeManager.ShowPrompt("购买成功。");
- }
- }
- /**
- * 视频购买
- */
- VideoBuy():void{
- PlatformManager.showRewardedVideo(()=>{
- if(this.BuyFence()){
- NoticeManager.ShowPrompt("购买成功。");
- }
- }, ()=>{
- NoticeManager.ShowPrompt("购买失败。");
- })
- }
- private BuyFence():boolean{
- //金钱购买
- if(this.data.buyType==0){
- if(GameModel.single.gold<this.data.buyConsume){
- NoticeManager.ShowPrompt("金币不足!");
- return false;
- }
- GameModel.single.gold-=this.data.buyConsume;
- }else if(this.data.buyType==1){//钻石购买
- if(GameModel.single.diamond<this.data.buyConsume){
- NoticeManager.ShowPrompt("钻石不足!");
- return false;
- }
- GameModel.single.diamond-=this.data.buyConsume;
- }
- GameModel.single.currentFenceId=this.data.id;
- return true;
- }
- // update (deltaTime: number) {
- // // Your update function goes here.
- // }
- }
|