Example #1
0
void SFXFMODEventSource::play( F32 fadeInTime )
{
   if( getStatus() == SFXStatusPlaying )
      return;
      
   if( isPaused() )
      SFXFMODDevice::smFunc->FMOD_Event_SetPaused( mHandle, false );
   else
   {
      AssertFatal( getEvent()->getEventGroup()->isDataLoaded(), "SFXFMODEventSource::play() - event data for group not loaded" );
                     
      if( fadeInTime != -1.f )
      {
         U32 fade = U32( fadeInTime * 1000.f );
         SFXFMODDevice::smFunc->FMOD_Event_SetPropertyByIndex(
            mHandle, FMOD_EVENTPROPERTY_FADEIN,
            &fade, true
         );
      }
      
      FMOD_RESULT result = SFXFMODDevice::smFunc->FMOD_Event_Start( mHandle );
      if( result != FMOD_OK )
      {
         Con::errorf( "SFXFMODEventSoure::play() - failed to start event: %s", FMODResultToString( result ).c_str() );
         return;
      }
   }
   
   mPlayTimer.start();
   _setStatus( SFXStatusPlaying );
   
   _play();
}
Example #2
0
void AudioCD::Play(int i, CDPlayStuff* stuff)
{
  CDPlayStuff defaultStuff;
  if (!stuff) stuff=&defaultStuff;
  TrackInfo info=m_info[i];
  m_CurPlayStartSector=info.startSector;
  m_CurPlayDurationSectors=info.durationSectors;
  _play(stuff);
}
Example #3
0
File: Game.cpp Project: z0mbie42/42
bool	Game::launch()
{
	bool	ret;

	if (_init()) {
		ret = _play();
		_uninit();
		return ret;
	} else {
		_uninit();
		_displayError();
		return false;
	}
}
void SFXXAudioVoice::_seek( U32 sample )
{
   #ifdef DEBUG_SPEW
   Platform::outputDebugString( "[SFXXAudioVoice] Seeking to %i", sample );
   #endif

   mNonStreamSampleStartPos = sample;

   bool wasPlaying = mIsPlaying;
   
   _stop();
   if( wasPlaying )
      _play();
}
void SkeletonIKEditorPlugin::edit(Object *p_object) {

	if (p_object != skeleton_ik) {
		if (skeleton_ik) {
			play_btn->set_pressed(false);
			_play();
		}
	}

	SkeletonIK *s = Object::cast_to<SkeletonIK>(p_object);
	if (!s)
		return;

	skeleton_ik = s;
}
Example #6
0
app_result_e mengine_resume(void* msg_ptr)
{
    bool ret_vals;

    //重新开始播放, 设置文件
    //ret_vals = _set_file();
    //if (ret_vals == TRUE)
    //{
    ret_vals = _play(PLAY_RESUME);//播放
    //}
    //todo 暂时先这样修改
    change_engine_state(ENGINE_STATE_PLAYING);

    mengine_reply_msg(msg_ptr, ret_vals);

    return RESULT_IGNORE;
}
Example #7
0
static void
_process_emotion_commands(struct _App *app)
{
   int cmd = _em_cmd_read(app);
   switch (cmd) {
      case EM_CMD_FILE_SET:
	 _file_set(app);
	 break;
      case EM_CMD_FILE_SET_DONE:
	 _file_set_done(app);
	 break;
      case EM_CMD_FILE_CLOSE:
	 _file_close(app);
	 break;
      case EM_CMD_PLAY:
	 _play(app);
	 break;
      case EM_CMD_STOP:
	 _stop(app);
	 break;
      case EM_CMD_POSITION_SET:
	 _position_set(app);
	 break;
      case EM_CMD_SPEED_SET:
	 _speed_set(app);
	 break;
      case EM_CMD_AUDIO_MUTE_SET:
	 _mute_set(app);
	 break;
      case EM_CMD_VOLUME_SET:
	 _volume_set(app);
	 break;
      case EM_CMD_AUDIO_TRACK_SET:
	 _audio_track_set(app);
	 break;
      case EM_CMD_VIDEO_TRACK_SET:
	 _video_track_set(app);
	 break;
   };
}
Example #8
0
void rps_server_run() {
  RegisterAs("RPS Server");

  int tid;
  rps_request req;
  while (1) {
    Receive(&tid, (char *)&req, sizeof(rps_request));
    switch (req.type) {
      case SIGNUP:
        _signup(tid);
        break;
      case PLAY:
        _play(tid, req.move);
        break;
      case QUIT:
        _quit(tid);
        break;
      default:
        ERROR("Invalid rps request type %d\n", req.type);
    }
  }
}
Example #9
0
app_result_e mengine_play(void* msg_ptr)
{
    bool ret_vals;
     
    if (g_play_mode == PLAY_NO_PLAY)
    {
        ret_vals = _stop(STOP_PAUSE);//暂停播放
        change_engine_state(ENGINE_STATE_PAUSE);
        //清零setfile标志,播放需要重新set
        g_set_file_flag = FALSE;

    }
    else
    {
        ret_vals = _play(g_play_mode);//播放
    }
    g_play_mode = PLAY_NORMAL;
    //mengine_info.eg_playinfo.cur_file_switch |= 0x01;
    mengine_reply_msg(msg_ptr, ret_vals);

    return RESULT_IGNORE;
}
Example #10
0
app_result_e mengine_play_cuemusic(void* msg_ptr)
{
    bool ret_vals;

    //消息指针
    private_msg_t* data_ptr = (private_msg_t*) msg_ptr;

    //mengine_status_t *eg_status = &mengine_info.eg_status;
    mengine_config_t *eg_cfg = &mengine_info.eg_config;

    //void * data_ptr = msg_ptr->msg.content.addr;//存放书签断点的数据指针

    //当前是播放状态,则停止播放

    ret_vals = _stop(STOP_PAUSE);//暂停播放,由内部保证是播放状态才停止
    if (ret_vals == FALSE)
    {
        goto msg_end;
    }

    //保存断点,必须在_stop之后,因为_stop中会获取断点,放在_stop之前断点会被覆盖
    libc_memcpy(&eg_cfg->bk_infor, data_ptr->msg.content.addr, sizeof(mmm_mp_bp_info_t));

    //重新开始播放, 设置文件
    //ret_vals = _set_file();
    //if (ret_vals == FALSE)
    //{
    //    goto msg_end;
    //}

    ret_vals = _play(PLAY_RESUME);//播放

    msg_end:
    //返回成功
    mengine_reply_msg(msg_ptr, TRUE);

    return RESULT_IGNORE;
}
Example #11
0
    void MovieSprite::play()
    {
        if (_playing)
        {
            if (_paused)
            {
                _resume();
                _paused = false;
                return;
            }

            return;
        }


        _playing = true;


        initPlayer();

        _completeDispatched = false;
        _play();
    }
Example #12
0
app_result_e mengine_play_prev(void* msg_ptr)
{
    play_status_e play_status = g_eg_status_p->play_status;

    //大于5s重头开始播歌,不向前切歌
    if (g_eg_playinfo_p->cur_time > 5000)
    {
        g_eg_playinfo_p->cur_time = 0;
        
        //清除断点
        libc_memset(&(g_eg_cfg_p->bk_infor), 0, sizeof(mmm_mp_bp_info_t));
        
        _stop(STOP_NORMAL);//停止播放
        
        if (play_status == PlaySta)
        {
            _set_file();
            _play(PLAY_NORMAL);//播放 
        }
        mengine_reply_msg(msg_ptr, TRUE);
        return RESULT_IGNORE;
    }
    return mengine_play_switch(msg_ptr, FORCE_SWITCH_PREV);
}
void AnimationManager::run() {
    _play();
    if (get_script_instance()) {
        get_script_instance()->call_multilevel("_play");
    }
}
Example #14
0
static int loop(rh_aout_api_itf self, rh_asmp_itf asmp_itf) {

    return _play(self, asmp_itf, 1);
}
Example #15
0
static int play(rh_aout_api_itf self, rh_asmp_itf asmp_itf) {

    return _play(self, asmp_itf, 0);
}