using PerfectWorld.Scripts.Task; namespace BrewMonster.Scripts.Task { public interface TaskInterface { bool Init(byte[] pActiveListBuf, int iActiveListLen, byte[] pFinishedListBuf, int iFinishedListLen, byte[] pFinishedTimeListBuf, int iFinishedTimeListLen, byte[] pFinishedCountListBuf, int iFinishedCountListLen, byte[] pStorageTaskListBuf, int iStorageTaskListLen); /// /// Get task state info for a task id. 清理并填充任务状态信息 // Clean and fill task state info /// /// 任务ID // Task ID /// 输出任务状态 // Output task state /// 是否在激活列表中查找 // Whether to search in active list void GetTaskStateInfo(uint ulTaskId, ref Task_State_info pInfo, bool bActiveTask); bool CheckTaskForbid(uint task_id); bool IsAtCrossServer(); bool IsDeliverLegal(); int GetCommonItemCount(uint ulCommonItem); int GetTaskItemCount(uint ulTaskItem); uint GetPlayerLevel(); uint GetGoldNum(); int GetGlobalValue(int lKey); byte GetShapeMask(); int GetPos(float[] pos); bool CheckSimpleTaskFinshConditon(uint task_id); int GetFactionConsumeContrib(); int GetFactionExpContrib(); bool HasTask(uint ulTaskId); #if _TASK_CLIENT void GetTaskAwardPreview(uint ulTaskId,ref Task_Award_Preview p, bool bActiveTask = true); uint GetTaskCount(); uint GetTaskId(uint ulIndex); uint CanDeliverTask(uint ulTaskId); void UpdateTaskUI(uint idTask, int reason); #endif // bool HasTask(uint taskId); // bool CheckTaskForbid(uint taskId); long GetGlobalValue(long key); // uint GetPlayerLevel(); uint GetMaxHistoryLevel(); uint GetReincarnationCount(); bool IsRealmExpFull(); uint GetReputation(); // uint GetGoldNum(); int GetFactionRole(); bool IsInFaction(uint factionId); bool IsMale(); uint GetPlayerOccupation(); uint GetCurPeriod(); bool IsGM(); bool IsShieldUser(); bool IsMarried(); // bool IsAtCrossServer(); bool IsWeddingOwner(); uint GetInvEmptySlot(); int GetFactionContrib(); // byte GetShapeMask(); int GetForce(); int GetForceReputation(); int GetForceContribution(); int GetExp(); int GetSP(); int GetForceActivityLevel(); bool IsKing(); bool IsInTeam(); uint GetAccountTotalCash(); void NotifyServer(ref task_notify_base pBuf, uint sz); bool CheckVersion(); StorageTaskList GetStorageTaskList(); void ShowPunchBagMessage(bool bSucced,bool bMax,uint MonsterTemplID,int dps,int dph); ActiveTaskList GetActiveTaskList(); uint GetTaskMask(); byte[] GetFinishedTimeList(); void OnNewTask(int iTaskID); void UpdateConfirmTasksMap(); void OnCompleteTask(int iTaskID); void TakeAwayCommonItem(uint ulTemplId, uint ulNum); void TakeAwayTaskItem(uint ulTemplId, uint ulNum); void TakeAwayGold(uint ulNum) ; void TakeAwayFactionConsumeContrib(int ulNum); void TakeAwayFactionExpContrib(int ulNum){} void OnGiveupTask(int iTaskID); } }