当前位置: 首页 > news >正文

襄阳做网站的网络营销案例有哪些

襄阳做网站的,网络营销案例有哪些,教人做衣服得网站有哪些,做网站为什么可以自学本节最终效果演示 文章目录 本节最终效果演示系列目录前言快捷栏绘制UI代码控制快捷列表信息 源码完结 系列目录 前言 欢迎来到【制作100个Unity游戏】系列!本系列将引导您一步步学习如何使用Unity开发各种类型的游戏。在这第23篇中,我们将探索如何制作…

本节最终效果演示

在这里插入图片描述

文章目录

  • 本节最终效果演示
  • 系列目录
  • 前言
  • 快捷栏
    • 绘制UI
    • 代码控制快捷列表信息
  • 源码
  • 完结

系列目录

前言

欢迎来到【制作100个Unity游戏】系列!本系列将引导您一步步学习如何使用Unity开发各种类型的游戏。在这第23篇中,我们将探索如何制作一个类似于七日杀和森林的生存游戏。

本篇内容会比较多,我会分几篇来实现,感兴趣的可以关注一下,以免错过内容更新。

本节主要实现了快捷栏的功能。

快捷栏

绘制UI

绘制快捷栏UI,并且重新绘制背包显示的icon,加入背景用于显示选中效果,记得默认隐藏
在这里插入图片描述
记得修改InventorySystem获取图片Icon的方式,以便可以正确显示物品拾取弹窗信息

//添加物品
public void AddToInventory(string itemName)
{// 。。。TriggerPickupPopUp(itemName, itemToAdd.transform.Find("Icon").GetComponent<Image>().sprite);
}

代码控制快捷列表信息

public class EquipSystem : MonoBehaviour
{public static EquipSystem Instance { get; set; }public GameObject quickSlotsPanel; // 快捷栏面板public List<GameObject> quickSlotsList = new List<GameObject>(); // 快捷栏列表private void Awake(){if (Instance == null){Instance = this;}else{Destroy(gameObject);}}private void Start(){PopulateSlotList(); // 填充快捷栏列表}private void PopulateSlotList(){foreach (Transform child in quickSlotsPanel.transform){if (child.CompareTag("QuickSlot")){quickSlotsList.Add(child.gameObject);}}}public void AddToQuickSlots(GameObject itemToEquip){// 查找下一个可用的快捷栏格子GameObject availableSlot = FindNextEmptySlot();// 将物品放置在该格子内itemToEquip.transform.SetParent(availableSlot.transform, false);InventorySystem.Instance.ReCalculeList(); // 重新计算物品列表CraftingSystem.Instance.RefreshNeededItems(); // 刷新制作系统所需物品列表}//获取空闲的格子private GameObject FindNextEmptySlot(){// 遍历快捷栏列表,查找是否有空闲的格子foreach (GameObject slot in quickSlotsList){if (slot.transform.childCount == 0){return slot;}}// 如果没有空闲的格子,则返回一个新的GameObjectreturn new GameObject();}//判断快捷栏是否已满public bool CheckIfFull(){int counter = 0;// 遍历快捷栏列表,查找是否有空闲的格子foreach (GameObject slot in quickSlotsList){if (slot.transform.childCount > 0){counter ++;}}// 如果遍历完所有格子,都没有空闲的格子,则表示快捷栏已满if (counter == 7){return true;}else{return false;}}
}

挂载代码,配置信息
在这里插入图片描述
修改InventoryItem,实现特定物品才可以拉到快捷栏

[Header("是否已经装备")]
public bool isNowEquipped;// 当鼠标点击物品时触发
public void OnPointerDown(PointerEventData eventData)
{// 。。。//按左shift再点击鼠标左键装备/卸载物品if (Input.GetKey(KeyCode.LeftShift) && eventData.button == PointerEventData.InputButton.Left){// 该物品可装备尚未装备,并且装备栏未满if (isNowEquipped == false && EquipSystem.Instance.CheckIfFull() == false)// if (isEquippable && isNowEquipped == false && EquipSystem.Instance.CheckIfFull() == false){// 将物品添加到快捷栏并标记为已装备EquipSystem.Instance.AddToQuickSlots(gameObject);isNowEquipped = true;}// 该物品可装备已经装备,并且背包未满else if (isNowEquipped == true && InventorySystem.Instance.CheckIfFull() == false){// 将物品添加到背包并标记为未装备InventorySystem.Instance.AddToInventory(gameObject);isNowEquipped = false;}}
}

修改InventorySystem,添加新的新增物品方法

//添加物品
public void AddToInventory(GameObject itemToAdd)
{// 找到下一个空闲的槽位whatSlotToEquip = FindNextEmptySlot();// 将新实例化的物体的父对象设置为whatSlotToEquipitemToAdd.transform.SetParent(whatSlotToEquip.transform, false);// 将物品名称添加到itemList中itemList.Add(itemToAdd.GetComponent<InventoryItem>().thisName);ReCalculeList();CraftingSystem.Instance.RefreshNeededItems();
}

修改ItemSlot,判断放置时是否是快捷栏,修改装备状态

// 当拖拽物体被放置到当前物品槽时
public void OnDrop(PointerEventData eventData)
{if (!Item){// 。。。// 如果当前物品槽不是快捷栏if (transform.CompareTag("QuickSlot") == false){// 标记待装备的物品为未装备状态DragDrop.itemBeingDragged.GetComponent<InventoryItem>().isNowEquipped = false;InventorySystem.Instance.ReCalculeList(); // 重新计算物品列表CraftingSystem.Instance.RefreshNeededItems(); // 刷新制作系统所需物品列表} else {// 标记待装备的物品为装备状态DragDrop.itemBeingDragged.GetComponent<InventoryItem>().isNowEquipped = true;InventorySystem.Instance.ReCalculeList(); // 重新计算物品列表CraftingSystem.Instance.RefreshNeededItems(); // 刷新制作系统所需物品列表}}
}

效果
在这里插入图片描述

源码

源码不出意外的话我会放在最后一节

完结

赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,以便我第一时间收到反馈,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!

好了,我是向宇,https://xiangyu.blog.csdn.net

一位在小公司默默奋斗的开发者,出于兴趣爱好,最近开始自学unity,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!php是工作,unity是生活!如果你遇到任何问题,也欢迎你评论私信找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~

在这里插入图片描述

http://www.hkea.cn/news/609868/

相关文章:

  • 建设工程教育appseo技术培训中心
  • 家教中介怎么利用网站来做的免费广告推广
  • wordpress仿制建设seo是什么平台
  • 商城网站建设分为几块seo臻系统
  • 网络营销对于个人而言有什么作用seo文章
  • 做书籍封皮的网站今日中国新闻
  • 东莞建设网站电工培训技术学校
  • 深圳聘请做网站人员成都排名seo公司
  • 网站备案之后东莞网站关键词优化公司
  • 多种专业网站建设潍坊网站排名提升
  • 网站投稿系统怎么做网站制作流程是什么
  • 交警网站建设整改百度推广怎么推广
  • 重庆网站建设哪里比较好呢网站下载
  • 网站运行速度慢的原因看b站二十四小时直播间
  • 电商网站开发服务全网营销骗局揭秘
  • 个人网站怎么做互联网营销师培训课程免费
  • 微信网站建设价格网站开发报价方案
  • wordpress utc时间慢8小时大连seo关键词排名
  • 中国建设承包商网站创建软件平台该怎么做
  • 中小企业网站建设费用海外推广服务
  • 企业名称的英文做网站名seo是怎么优化推广的
  • 手机在线建站西安seo服务公司
  • 网站开发有前途吗我也要投放广告
  • 备案 网站名称怎么写crm软件
  • 扁平式网站模板b2b网站推广优化
  • 做外贸网站网络营销咨询服务
  • 江门网站建设方案报价淘宝seo优化怎么做
  • 盘龙城做网站推广网站推广
  • 如何做电子书网站域名站长工具
  • 物联网平台有哪些排名优化外包公司