protected override AbstractCommodity CreateCommodity(CommodityType commodityType) { AbstractCommodity commodity = null; ICommodityIngredientFactory commodityIngredient = new ChaoshiCommodityIngredientFactory(); if ((commodityType & CommodityType.Gongyinglian) == CommodityType.Gongyinglian) { commodity = new GongyinglianCommodity(commodityIngredient); } return(commodity); }
/// <summary> /// 发布商品 /// </summary> /// <param name="commodityType">商品类型</param> /// <returns></returns> public AbstractCommodity IssuedCommodity(CommodityType commodityType) { AbstractCommodity commodity = CreateCommodity(commodityType); commodity.AddionalCommodityInfo = CommodityInfo.AddtionalInfo; commodity.BaseCommodityInfo = CommodityInfo.Base; commodity.Products = CommodityInfo.Products; commodity.Price = CommodityInfo.Price; commodity.BindProduct(); commodity.SetPrice(); commodity.PreResolveCommodity(); return(commodity); }
private void OnTryBuy(int money, AbstractCommodity item) { if (this.money + money < 0) { Debug.LogWarning("你只有: " + this.money); return; } this.money += money; // Debug.Log("当前金钱:"+this.money); CEventCenter.BroadMessage(Message.M_MoneyChange, money); if (item != null) { Debug.Log("添加了物品,id: " + item.ID); CEventCenter.BroadMessage(Message.M_AddItem, item.ID, 1); } }
/// <summary> /// 实现创建商品 /// </summary> /// <param name="commodityType"></param> /// <returns></returns> protected override AbstractCommodity CreateCommodity(CommodityType commodityType) { AbstractCommodity commodity = null; ICommodityIngredientFactory ingredientFactory = new GongyinglianZYCommodityIngredientFactory() { Commodity = CommodityInfo }; if ((commodityType & CommodityType.Gongyinglian) == CommodityType.Gongyinglian) { commodity = new GongyinglianCommodity(ingredientFactory); } else if ((commodityType & CommodityType.Chaoshi) == CommodityType.Chaoshi) { commodity = new ChaoshiCommodity(ingredientFactory); } return(commodity); }