static int PlayClipData(IntPtr L) { try { int count = LuaDLL.lua_gettop(L); if (count == 2 && TypeChecker.CheckTypes(L, 1, typeof(MicroPhoneInput), typeof(short[]))) { MicroPhoneInput obj = (MicroPhoneInput)ToLua.ToObject(L, 1); short[] arg0 = ToLua.CheckNumberArray <short>(L, 2); obj.PlayClipData(arg0); return(0); } else if (count == 2 && TypeChecker.CheckTypes(L, 1, typeof(MicroPhoneInput), typeof(byte[]))) { MicroPhoneInput obj = (MicroPhoneInput)ToLua.ToObject(L, 1); byte[] arg0 = ToLua.CheckByteBuffer(L, 2); obj.PlayClipData(arg0); return(0); } else { return(LuaDLL.luaL_throw(L, "invalid arguments to method: MicroPhoneInput.PlayClipData")); } } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }
// 在空格处放上表情动画 private GameObject ReplaceEmojiWithPicture(string faceName) { GameObject sprite; UISprite spFace; UISpriteAnimation spaFace; AnimationVO aniConfig = GameConst.GetAnimationConfigByIndex(faceName); sprite = GameObject.Instantiate(faceTemplate); spFace = sprite.GetComponent <UISprite>(); spaFace = sprite.GetComponent <UISpriteAnimation>(); spFace.GetComponent <UIWidget>().width = (int)(cellLength * aniConfig.spaceNum * 0.5f); spFace.GetComponent <UIWidget>().height = (int)cellLength * aniConfig.rowNum; sprite.transform.parent = emojiContainer; spFace.spriteName = faceName + "_1"; spaFace.namePrefix = faceName + "_"; if (aniConfig != null) { if (aniConfig.isNotPlay) { StopAudioAnimation(spaFace); if (aniConfig.isAudio) { RegistUIButton(gameObject, (go) => { if (chatData == null || chatData.voiceData == null) { return; } Byte[] wavData = SevenZipCompress.Decompress(chatData.voiceData); _microPhoneInput.PlayClipData(wavData); spaFace.Play(); Director.GetInstance().scheduler.SetTimeOut(chatData.time, () => { StopAudioAnimation(spaFace); }); }); } } spaFace.framesPerSecond = aniConfig.rate; } if (!aniConfig.isAudio) { sprite.GetComponent <Collider>().enabled = false; } Vector3 tmpPos; sprite.transform.localScale = Vector3.one; tmpPos = picIndex; tmpPos.y = picIndex.y + cellLength * (aniConfig.rowNum - 1); sprite.transform.localPosition = tmpPos; sprite.name = faceName; sprite.SetActive(true); spFace.ResizeCollider(); return(sprite); }
static int PlayClipData(IntPtr L) { try { ToLua.CheckArgsCount(L, 2); MicroPhoneInput obj = (MicroPhoneInput)ToLua.CheckObject <MicroPhoneInput>(L, 1); short[] arg0 = ToLua.CheckNumberArray <short>(L, 2); obj.PlayClipData(arg0); return(0); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }