120 lines
3.6 KiB
C#
120 lines
3.6 KiB
C#
|
/********************************************************************************
|
|||
|
* 文件名: AutoSearchPoint.cs
|
|||
|
* 全路径: \Script\Player\AutoSearch\AutoSearchPoint.cs
|
|||
|
* 创建人: 李嘉
|
|||
|
* 创建时间:2014-01-02
|
|||
|
*
|
|||
|
* 功能说明:自动寻路点的基本信息,其中包括了场景和坐标
|
|||
|
* 修改记录:
|
|||
|
*********************************************************************************/
|
|||
|
using UnityEngine;
|
|||
|
using System.Collections;
|
|||
|
using GCGame.Table;
|
|||
|
|
|||
|
public class AutoSearchPoint
|
|||
|
{
|
|||
|
public enum ChangeMap_Type
|
|||
|
{
|
|||
|
TELEPORT = 0, //传送石
|
|||
|
WORLDMAP = 1, //世界地图
|
|||
|
TRAIL = 2, //追杀功能
|
|||
|
POINT = 3, //具体点传送
|
|||
|
MISSIONFLY = 4, //任务飞鞋
|
|||
|
}
|
|||
|
|
|||
|
public AutoSearchPoint()
|
|||
|
{
|
|||
|
m_nSceneID = -1;
|
|||
|
m_nSceneInstID = -1;
|
|||
|
m_GuildGuid = Games.GlobeDefine.GlobeVar.INVALID_GUID;
|
|||
|
}
|
|||
|
|
|||
|
public AutoSearchPoint(int sceneId, float posX, float posZ,int sceneInstId = -1, ChangeMap_Type changeType = ChangeMap_Type.WORLDMAP, ulong guildguid = Games.GlobeDefine.GlobeVar.INVALID_GUID)
|
|||
|
{
|
|||
|
Tab_SceneClass scene = TableManager.GetSceneClassByID(sceneId, 0);
|
|||
|
if (scene == null && guildguid == Games.GlobeDefine.GlobeVar.INVALID_GUID)
|
|||
|
return;
|
|||
|
m_nSceneID = sceneId;
|
|||
|
m_nSceneInstID = sceneInstId;
|
|||
|
m_fPosX = posX;
|
|||
|
m_fPosZ = posZ;
|
|||
|
m_ChangeMapType = changeType;
|
|||
|
m_GuildGuid = guildguid;
|
|||
|
Tab_GuildOther guildOther = TableManager.GetGuildOtherByID(0, 0);
|
|||
|
if (guildOther != null && scene != null)
|
|||
|
{
|
|||
|
if (scene.SceneID == guildOther.SceneId && guildguid == Games.GlobeDefine.GlobeVar.INVALID_GUID)
|
|||
|
if (GameManager.gameManager.PlayerDataPool.GuildInfo != null)
|
|||
|
m_GuildGuid = GameManager.gameManager.PlayerDataPool.GuildInfo.GuildGuid;
|
|||
|
}
|
|||
|
if(m_GuildGuid!= Games.GlobeDefine.GlobeVar.INVALID_GUID)
|
|||
|
{
|
|||
|
m_nSceneInstID = -1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public void Clean()
|
|||
|
{
|
|||
|
m_nSceneID = -1;
|
|||
|
m_fPosX = 0;
|
|||
|
m_fPosZ = 0;
|
|||
|
m_GuildGuid = Games.GlobeDefine.GlobeVar.INVALID_GUID;
|
|||
|
}
|
|||
|
|
|||
|
private ChangeMap_Type m_ChangeMapType; //传送方式
|
|||
|
public ChangeMap_Type ChangeMapType
|
|||
|
{
|
|||
|
get { return m_ChangeMapType; }
|
|||
|
set { m_ChangeMapType = value; }
|
|||
|
}
|
|||
|
|
|||
|
private int m_nSceneInstID = -1; //目标点场景线路ID
|
|||
|
public int SceneInstID
|
|||
|
{
|
|||
|
get { return m_nSceneInstID; }
|
|||
|
set { m_nSceneInstID = value; }
|
|||
|
}
|
|||
|
|
|||
|
private int m_nSceneID; //目标点场景ID
|
|||
|
public int SceneID
|
|||
|
{
|
|||
|
get { return m_nSceneID; }
|
|||
|
set { m_nSceneID = value; }
|
|||
|
}
|
|||
|
private float m_fPosX; //目标点X坐标
|
|||
|
public float PosX
|
|||
|
{
|
|||
|
get { return m_fPosX; }
|
|||
|
set { m_fPosX = value; }
|
|||
|
}
|
|||
|
private float m_fPosZ; //目标点Z坐标
|
|||
|
public float PosZ
|
|||
|
{
|
|||
|
get { return m_fPosZ; }
|
|||
|
set { m_fPosZ = value; }
|
|||
|
}
|
|||
|
|
|||
|
private ulong m_GuildGuid; //帮会场景根据帮会ID做特殊记录
|
|||
|
public ulong GuildGuid
|
|||
|
{
|
|||
|
get { return m_GuildGuid; }
|
|||
|
set { m_GuildGuid = value; }
|
|||
|
}
|
|||
|
|
|||
|
//根据一个obj的信息来构建一个AutoSearchPoint
|
|||
|
public static AutoSearchPoint MakePoint(GameObject obj)
|
|||
|
{
|
|||
|
if (null == obj)
|
|||
|
{
|
|||
|
return null;
|
|||
|
}
|
|||
|
|
|||
|
AutoSearchPoint point = new AutoSearchPoint();
|
|||
|
point.SceneID = GameManager.gameManager.RunningScene;
|
|||
|
point.m_fPosX = obj.transform.position.x;
|
|||
|
point.m_fPosZ = obj.transform.position.z;
|
|||
|
|
|||
|
return point;
|
|||
|
}
|
|||
|
}
|