宝石矿完成
This commit is contained in:
parent
c86ae668fd
commit
6b3332dda4
File diff suppressed because it is too large
Load Diff
@ -28,8 +28,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 5560367099341029388}
|
m_GameObject: {fileID: 5560367099341029388}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
|
@ -28,8 +28,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 5560367099341029388}
|
m_GameObject: {fileID: 5560367099341029388}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
|
@ -28,8 +28,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 5560367099341029388}
|
m_GameObject: {fileID: 5560367099341029388}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
|
@ -28,8 +28,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 5560367099341029388}
|
m_GameObject: {fileID: 5560367099341029388}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
|
@ -28,8 +28,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 5560367099341029388}
|
m_GameObject: {fileID: 5560367099341029388}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
|
8
meng_yao/Assets/script/Scene_jinshadao.meta
Normal file
8
meng_yao/Assets/script/Scene_jinshadao.meta
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f33539ca79f171848b82392523f97288
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
285
meng_yao/Assets/script/Scene_jinshadao/BaoshiRoomcontroller.cs
Normal file
285
meng_yao/Assets/script/Scene_jinshadao/BaoshiRoomcontroller.cs
Normal file
@ -0,0 +1,285 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
using DG.Tweening;
|
||||||
|
public class BaoshiRoomcontroller : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Range(0f, 1f)]
|
||||||
|
public float probabilityOfStand = 0.2f;//站立状态
|
||||||
|
[Header("精灵走路的概率")]
|
||||||
|
[Range(0f, 1f)]
|
||||||
|
public float probabilityOfWalk = 0.3f;//走路状态
|
||||||
|
[Header("精灵挖矿的概率")]
|
||||||
|
[Range(0f, 1f)]
|
||||||
|
public float probabilityOfDig = 0.5f;//挖矿状态
|
||||||
|
[Header("精灵的预制体")]
|
||||||
|
public GameObject fishManPrefab;
|
||||||
|
[Header("购买的精灵数据")]
|
||||||
|
public List<VoucherItem> listItem = new List<VoucherItem>();
|
||||||
|
private GameObject fishMan;//生成的渔船
|
||||||
|
private SpriteAniationpro fishManShipContorl;//渔船的控制器
|
||||||
|
|
||||||
|
[Header("精灵生成点")]
|
||||||
|
public Transform startPos;
|
||||||
|
[Header("精灵终点")]
|
||||||
|
public Transform endPos;
|
||||||
|
|
||||||
|
[Header("房间类型编号")]
|
||||||
|
public int type;
|
||||||
|
|
||||||
|
public float ActivateValue = 0;
|
||||||
|
public int Num = 0;
|
||||||
|
public int Type = 0;
|
||||||
|
|
||||||
|
[Header("精灵路径点集合")]
|
||||||
|
public List<Path> paths;
|
||||||
|
//航行时间
|
||||||
|
[Header("走路时间")]
|
||||||
|
public float pathsNeedTimer = 30f;
|
||||||
|
//捕鱼时间
|
||||||
|
[Header("挖矿时间")]
|
||||||
|
public float fishingNeedTimer = 30f;
|
||||||
|
//休息时间
|
||||||
|
[Header("休息时间")]
|
||||||
|
public float restTimer = 5f;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[Header("显示精灵数量")]
|
||||||
|
public Text shipNumberTextPro;
|
||||||
|
|
||||||
|
|
||||||
|
[Header("点击的特效")]
|
||||||
|
public GameObject effectPrefab;//特效
|
||||||
|
|
||||||
|
[Header("点击按钮出现的动画")]
|
||||||
|
public Transform OnBtnAni;
|
||||||
|
|
||||||
|
public float FishPrice;
|
||||||
|
|
||||||
|
public GameObject map;
|
||||||
|
|
||||||
|
|
||||||
|
public static bool canClick = true;
|
||||||
|
|
||||||
|
public List<string> ids = new List<string>();
|
||||||
|
|
||||||
|
public int number;
|
||||||
|
|
||||||
|
public GameObject musk;
|
||||||
|
// Start is called before the first frame update
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
listItem = new List<VoucherItem>();
|
||||||
|
UpdateShipNumberTextPro(listItem.Count.ToString());
|
||||||
|
}
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
FishPrice = 10;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async void addman(int type, int number)
|
||||||
|
{
|
||||||
|
if (type == this.type)
|
||||||
|
{
|
||||||
|
GenerateForFisherElf generateForFisherElf = new GenerateForFisherElf(); // 购买渔夫
|
||||||
|
generateForFisherElf.Num = Num;
|
||||||
|
generateForFisherElf.Count = 1;
|
||||||
|
string userponse = await web.SendRequest(web.URL + "/Voucher/GenerateForFisherElf", "POST", JsonUtility.ToJson(generateForFisherElf));
|
||||||
|
ids itemList = JsonUtility.FromJson<ids>(userponse);
|
||||||
|
Debug.Log(itemList.Ids[0]);
|
||||||
|
if (itemList.ErrorCode == 0) // 如果购买成功
|
||||||
|
{
|
||||||
|
Promptmgr.Instance.PromptBubble("购买成功", Color.black, Color.blue);
|
||||||
|
|
||||||
|
/* foreach (string item in itemList.Ids)
|
||||||
|
{
|
||||||
|
Use use = new Use(); // 使用渔夫
|
||||||
|
use.Id = item;
|
||||||
|
string rect = await web.SendRequest(web.URL + "/Voucher/Use", "POST", JsonUtility.ToJson(use));
|
||||||
|
Res res = JsonUtility.FromJson<ids>(userponse);
|
||||||
|
if (res.ErrorCode == 0)
|
||||||
|
{
|
||||||
|
|
||||||
|
Promptmgr.Instance.PromptBubble("购买成功", Color.black, Color.blue);
|
||||||
|
//增加船只数量
|
||||||
|
//ChangeShipNumber(1);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Promptmgr.Instance.PromptBubble(res.ErrorMessage, Color.black, Color.red);
|
||||||
|
}
|
||||||
|
}*/
|
||||||
|
|
||||||
|
}
|
||||||
|
else// 如果购买失败
|
||||||
|
{
|
||||||
|
Res res = JsonUtility.FromJson<ids>(userponse);
|
||||||
|
Promptmgr.Instance.PromptBubble(res.ErrorMessage, Color.black, Color.red);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnClick()
|
||||||
|
{
|
||||||
|
|
||||||
|
if (!canClick)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
//if (fishMan == null)
|
||||||
|
//{
|
||||||
|
// Promptmgr.Instance.PromptBubble("还没有买精灵!", Color.black, Color.red);
|
||||||
|
// return;
|
||||||
|
//}
|
||||||
|
|
||||||
|
add_fish();
|
||||||
|
|
||||||
|
}
|
||||||
|
public void add_fish(string timerStr = null)//生成船只
|
||||||
|
{
|
||||||
|
|
||||||
|
if (timerStr != null)
|
||||||
|
{
|
||||||
|
|
||||||
|
fishMan = GameObject.Instantiate(fishManPrefab, this.transform);
|
||||||
|
fishMan.transform.position = endPos.position;
|
||||||
|
fishManShipContorl = fishMan.GetComponent<SpriteAniationpro>();
|
||||||
|
|
||||||
|
Debug.Log("更新船时间");
|
||||||
|
|
||||||
|
//dig();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
musk.gameObject.SetActive(false);
|
||||||
|
number++;
|
||||||
|
UpdateShipNumberTextPro(number + "/10");
|
||||||
|
fishMan = GameObject.Instantiate(fishManPrefab, this.transform);
|
||||||
|
fishMan.transform.position = startPos.position;
|
||||||
|
fishManShipContorl = fishMan.GetComponent<SpriteAniationpro>();
|
||||||
|
|
||||||
|
MoveToFishingPos();
|
||||||
|
}
|
||||||
|
void MoveToFishingPos()
|
||||||
|
{
|
||||||
|
|
||||||
|
// 随机选择一条路径
|
||||||
|
Path selectedPath = paths[Random.Range(0, paths.Count)];
|
||||||
|
|
||||||
|
|
||||||
|
// 移动到挖矿点
|
||||||
|
StartCoroutine(MoveToFishingPoint(selectedPath.pathPoints));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IEnumerator MoveToFishingPoint(List<Transform> path)
|
||||||
|
{
|
||||||
|
// 将路径点转换为 Vector3 数组
|
||||||
|
Vector3[] pathPoints = new Vector3[path.Count];
|
||||||
|
for (int i = 0; i < path.Count; i++)
|
||||||
|
{
|
||||||
|
pathPoints[i] = path[i].position;
|
||||||
|
}
|
||||||
|
|
||||||
|
//改变朝向
|
||||||
|
ChangeShipLook(pathPoints[0], pathPoints[path.Count - 1]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//动作变化,移动
|
||||||
|
fishManShipContorl.SetAni(1);
|
||||||
|
|
||||||
|
// 使用 DOPath 沿着路径移动到捕鱼点,并禁用旋转变化
|
||||||
|
yield return fishMan.transform.DOPath(pathPoints, pathsNeedTimer, PathType.CatmullRom)
|
||||||
|
.SetOptions(false) // 禁用旋转
|
||||||
|
.SetEase(Ease.InOutSine)
|
||||||
|
.WaitForCompletion();
|
||||||
|
//挖矿
|
||||||
|
dig();
|
||||||
|
}
|
||||||
|
|
||||||
|
void dig()
|
||||||
|
{
|
||||||
|
//动作变化,捕鱼
|
||||||
|
fishManShipContorl.SetAni(2);
|
||||||
|
StartCoroutine(movetoStatrPos());
|
||||||
|
}
|
||||||
|
|
||||||
|
IEnumerator movetoStatrPos()
|
||||||
|
{
|
||||||
|
yield return new WaitForSeconds(3);
|
||||||
|
Debug.Log("朝向左边");
|
||||||
|
fishMan.transform.rotation = Quaternion.Euler(0, 180, 0);
|
||||||
|
fishManShipContorl.SetAni(1);
|
||||||
|
Vector3[] ve = { endPos.position, startPos.position };
|
||||||
|
// 使用 DOPath 沿着路径移动到捕鱼点,并禁用旋转变化
|
||||||
|
yield return fishMan.transform.DOPath(ve, pathsNeedTimer, PathType.CatmullRom)
|
||||||
|
.SetOptions(false) // 禁用旋转
|
||||||
|
.SetEase(Ease.InOutSine)
|
||||||
|
.WaitForCompletion();
|
||||||
|
|
||||||
|
fishManShipContorl.SetAni(0);
|
||||||
|
yield return new WaitForSeconds(3);
|
||||||
|
MoveToFishingPos();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//根据前后位置改变朝向
|
||||||
|
void ChangeShipLook(Vector3 _startpos, Vector3 _endpos)
|
||||||
|
{
|
||||||
|
if (_startpos.x > _endpos.x)
|
||||||
|
{
|
||||||
|
Debug.Log("朝向左边");
|
||||||
|
fishMan.transform.rotation = Quaternion.Euler(0, 180, 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Debug.Log("朝向右边");
|
||||||
|
fishMan.transform.rotation = Quaternion.Euler(0, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//更新精灵数量显示
|
||||||
|
public void UpdateShipNumberTextPro(string str)
|
||||||
|
{
|
||||||
|
if (shipNumberTextPro.text == str)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
shipNumberTextPro.text = str;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//使用代金卷
|
||||||
|
async void UseShip()
|
||||||
|
{
|
||||||
|
Use use = new Use(); // 使用渔夫
|
||||||
|
use.Id = listItem[0].Id;
|
||||||
|
string rect = await web.SendRequest(web.URL + "/Voucher/Use", "POST", JsonUtility.ToJson(use));
|
||||||
|
Res res = JsonUtility.FromJson<ids>(rect);
|
||||||
|
if (res.ErrorCode == 0)
|
||||||
|
{
|
||||||
|
Promptmgr.Instance.PromptBubble("使用成功", Color.black, Color.blue);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Promptmgr.Instance.PromptBubble(res.ErrorMessage, Color.black, Color.red);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e297a85212c3f7c488fd9975172f2e5d
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -151,6 +151,7 @@ public class roomcontroller : MonoBehaviour
|
|||||||
|
|
||||||
if (timerStr != null)
|
if (timerStr != null)
|
||||||
{
|
{
|
||||||
|
|
||||||
fishMan = GameObject.Instantiate(fishManPrefab, this.transform);
|
fishMan = GameObject.Instantiate(fishManPrefab, this.transform);
|
||||||
fishMan.transform.position = endPos.position;
|
fishMan.transform.position = endPos.position;
|
||||||
fishManShipContorl = fishMan.GetComponent<SpriteAniationpro>();
|
fishManShipContorl = fishMan.GetComponent<SpriteAniationpro>();
|
||||||
|
Loading…
Reference in New Issue
Block a user