public void ReduceCachedRef(string url, EResourceType resType, Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE objType = Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE.OBJ) { if (string.IsNullOrEmpty(url)) { return; } switch (resType) { case EResourceType.Effect: { _effectCached.ReduceRef(url); break; } case EResourceType.CharacterModel: { if (objType == Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE.OBJ_NPC || objType == Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE.OBJ_MAIN_PLAYER) { _modelCached.ReduceRef(url); } break; } } }
//有衰减的音效播放,目前用在NPC的受击、死亡音效上 public void PlaySoundAtPos(Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE ObjType, int nSoundID, Vector3 playingPos) { if (GameManager.gameManager.SoundManager == null) { return; } if (ObjType == Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE.OBJ_MAIN_PLAYER) { GameManager.gameManager.SoundManager.PlaySoundEffect(nSoundID); } else { if (Singleton <ObjManager> .Instance.MainPlayer != null) { GameManager.gameManager.SoundManager.PlaySoundEffectAtPos2(nSoundID, playingPos, Singleton <ObjManager> .Instance.MainPlayer.Position); } else { GameManager.gameManager.SoundManager.PlaySoundEffect(nSoundID); } } }