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

美食网站怎么做dw网站关键词优化方法

美食网站怎么做dw,网站关键词优化方法,建设网站空间怎么预算,网站建设进度表 下载Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili FileDataHandler.cs using System; using System.IO; using UnityEngine; p…

   Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考
此代码仅为较上一P有所改变的代码

【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili

 FileDataHandler.cs
using System;
using System.IO;
using UnityEngine;
public class FileDataHandler
{private string dataDirPath = "";private string dataFileName = "";public FileDataHandler(string _dataDirPath, string _dataFilePath)//构造函数拿到需要保存的位置和文件名称{dataDirPath = _dataDirPath;dataFileName = _dataFilePath;}public void Save(GameData _data){string fullPath = Path.Combine(dataDirPath, dataFileName);//合成路径函数 将位置和文件合并成实际的可以读取的路径try//用try防止其报错{Directory.CreateDirectory(Path.GetDirectoryName(fullPath));//通过路径创建出需要的文件,存在就不创建了string dataToStore = JsonUtility.ToJson(_data, true);//将传过来的gameData转换成文本形式并且使其可读using (FileStream stream = new FileStream(fullPath, FileMode.Create))//两个using 第一个进入文件使其变为可编写模式{using (StreamWriter writer = new StreamWriter(stream))//第二个拿到文件对其进行编辑{writer.Write(dataToStore);//写入函数}}}catch (Exception e){Debug.LogError("Error on trying to save data to file " + fullPath + "\n" + e);}}public GameData Load()//同上{string fullPath = Path.Combine(dataDirPath, dataFileName);GameData loadData = null;if (File.Exists(fullPath)){try{string dataToLoad = "";using (FileStream stream = new FileStream(fullPath, FileMode.Open)){using (StreamReader reader = new StreamReader(stream)){dataToLoad = reader.ReadToEnd();}}loadData = JsonUtility.FromJson<GameData>(dataToLoad);//转换为游戏需要的类型}catch (Exception e){Debug.LogError(e);}}return loadData;}
}

ISaveManager.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public interface ISaveManager
{void LoadData(GameData _data);void SaveData(ref GameData _data);
}

SaveManager.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Linq;public class SaveManager : MonoBehaviour
{public static SaveManager instance;[SerializeField] private string fileName;GameData gameData;private List<ISaveManager> saveManagers;private FileDataHandler dataHandler;private void Awake(){if (instance != null)Destroy(instance);elseinstance = this;}private void Start(){dataHandler = new FileDataHandler(Application.persistentDataPath, fileName);saveManagers = FindAllSaveManagers();LoadGame();}public void NewGame(){gameData = new GameData();}public void LoadGame(){gameData = dataHandler.Load();if(this.gameData == null){Debug.Log("No data");NewGame();}foreach(ISaveManager saveManager in saveManagers)//循环调用所有的找到脚本的LoadData和SaveData到,这样便可以将所有的数据汇聚到gameData中,并从中拿到data{saveManager.LoadData(gameData);}Debug.Log("Loaded currency " + gameData.currency);}public void SaveGame()循环调用所有的找到脚本的LoadData和SaveData到,这样便可以将所有的数据汇聚到gameData中,并从中拿到data{foreach(ISaveManager saveManager in saveManagers){saveManager.SaveData(ref gameData);}dataHandler.Save(gameData);}private void OnApplicationQuit(){SaveGame();}private List<ISaveManager> FindAllSaveManagers()//全局寻找带ISave的脚本的函数{IEnumerable<ISaveManager> saveManager = FindObjectsOfType<MonoBehaviour>().OfType<ISaveManager>();return new List<ISaveManager>(saveManager);}
}

GameData.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[System.Serializable]
public class GameData
{public int currency;public GameData(){this.currency = 0;}
}
PlayerManager.cs
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;public class PlayerManager : MonoBehaviour, ISaveManager
{public static PlayerManager instance;public Player player;//这是通过在外部设置了一个组件,让这个组件能够直接把Player找到,从而减少FInd的方式所带来的高负载public int currency;private void Awake(){if(instance != null){Destroy(instance.gameObject);}elseinstance = this;}public bool HaveEnoughMoney(int _price){if(_price > currency){Debug.Log("Not enough money");return false;}currency -= _price;return true;}public int GetCurrency() => currency;public void LoadData(GameData _data){currency = _data.currency;}public void SaveData(ref GameData _data){_data.currency = this.currency;}
}

http://www.khdw.cn/news/48578.html

相关文章:

  • 网站专业代做哪家好企业整站优化
  • 资讯网站 怎样 增强用户粘度百度收录量
  • 青岛网站关键词排名优化seo网络推广优化教程
  • 武汉模板网站东莞做网页建站公司
  • 中国建设有限公司官网杭州seo靠谱
  • 附近企业建站公司企业seo排名外包
  • 网络公司名字大全寓意抖音关键词排名优化软件
  • 公共建设工程中心网站seo系统是什么
  • 网站空间3个g多少钱seo发贴软件
  • 常用的开发环境有哪几种seo博客推广
  • 如何做网站公司seo深度优化公司
  • 中学网站建设2022年列入传销组织最新骗法
  • 孟村做网站网站维护费用
  • 龙岗做企业网站深圳百度网站排名优化
  • 网站开发计划书范文小红书推广费用一般多少
  • 建设企业网站公积金站长之家域名查询官网
  • 丽江门户网站广州seo排名优化
  • 融安有那几个网站做的比较好的建设网官方网站
  • java主要就是做网站吗找客户资源的网站
  • 昆明网站搭建公司企业官网推广
  • 丽水市建设局网站电工证如何去推广一个app
  • 淘宝优惠券网站怎么做的搜索引擎优化关键词选择的方法有哪些
  • 开发网站流程seo产品推广
  • 台州seo网站推广费用5118素材网站
  • 加盟类网站怎么做seo企业优化方案
  • 可以在自己家做外卖的网站网站模板套用教程
  • 政府网站专题栏目建设方案外贸商城建站
  • 运用阿里云怎么做网站谷歌seo一个月费用需要2万吗
  • 没有网站 可以做百度口碑吗seo优化的方法有哪些
  • 乌鲁木齐网站设计服务商app关键词排名优化