Coder Social home page Coder Social logo

osurtdataprovider's Introduction

OsuRTDataProviderDLL

This is an edited fork repository from OsuRTDataProvider. It supports OSU! and OSU!Tourney.

OsuRTDataProvider can be obtained from OSU!(Stable Only):

  • Beatmap
  • Game Status
  • Accuracy
  • Health Point
  • Combo
  • 300 Count
  • 100 Count
  • 50 Count
  • Miss Count
  • Katu Count
  • Geki Count
  • Mods
  • Play Time
  • Score
  • Game Mode

OSU! Clinet Version Requirements: b20190816 After

How to use?

Build this repository from the source in Visual Studio.
Then, use the output dll.

You can use this dll in Python (with pythonnet) or any other language. But you have to enable this plugin from OsuRTDataProviderPlugin.Enable in namespace OsuRTDataProvider to enable.

API

OsuRTDataProviderPlugin class

Property
        public OsuListenerManager ListenerManager;

        //If EnableTourneyMode = false in config.ini, return null.
        public OsuListenerManager[] TourneyListenerManagers;
        public int TourneyListenerManagersCount;

OsuListenerManager class

Event
        public delegate void OnBeatmapChangedEvt(Beatmap map);
        public delegate void OnHealthPointChangedEvt(double hp);
        public delegate void OnAccuracyChangedEvt(double acc);
        public delegate void OnComboChangedEvt(int combo);
        public delegate void OnModsChangedEvt(ModsInfo mods);
        public delegate void OnPlayingTimeChangedEvt(int ms);
        public delegate void OnHitCountChangedEvt(int hit);
        public delegate void OnStatusChangedEvt(OsuStatus last_status, OsuStatus status);
        public delegate void OnErrorStatisticsChangedEvt(ErrorStatisticsResult result);
        public delegate void OnPlayerChangedEvt(string player);
        public delegate void OnHitEventsChangedEvt(PlayType playType, List<HitEvent> hitEvents);

        /// <summary>
        /// Available at Playing and Linsten.
        /// If too old beatmap, map.ID = -1.
        /// </summary>
        public event OnBeatmapChangedEvt OnBeatmapChanged;

        /// <summary>
        /// Available at Playing.
        /// </summary>
        public event OnHealthPointChangedEvt OnHealthPointChanged;

        /// <summary>
        /// Available at Playing.
        /// </summary>
        public event OnAccuracyChangedEvt OnAccuracyChanged;

        /// <summary>
        /// Available at Playing.
        /// </summary>
        public event OnComboChangedEvt OnComboChanged;

        /// <summary>
        /// Available at Playing.
        /// if OsuStatus turns Listen , mods = ModsInfo.Empty
        /// </summary>
        public event OnModsChangedEvt OnModsChanged;

        /// <summary>
        /// Available at Playing and Listen.
        /// </summary>
        public event OnPlayingTimeChangedEvt OnPlayingTimeChanged;

        /// <summary>
        /// Available at Playing.
        /// </summary>
        public event OnHitCountChangedEvt On300HitChanged;

        /// <summary>
        /// Available at Playing.
        /// </summary>
        public event OnHitCountChangedEvt On100HitChanged;

        /// <summary>
        /// Available at Playing.
        /// </summary>
        public event OnHitCountChangedEvt On50HitChanged;

        /// <summary>
        /// Available at Playing.
        /// </summary>
        public event OnHitCountChangedEvt OnMissHitChanged;

        /// <summary>
        /// Available at Any.
        /// </summary>
        public event OnStatusChangedEvt OnStatusChanged;

        /// <summary>
        /// Get ErrorStatistics(UnstableRate and Error Hit).
        /// </summary>
        public event OnErrorStatisticsChangedEvt OnErrorStatisticsChanged;

        /// <summary>
        /// Get player name in playing.
        /// </summary>
        public event OnPlayerChangedEvt OnPlayerChanged;

        /// <summary>
        /// Get play type and hit events in playing. (https://osu.ppy.sh/help/wiki/osu!_File_Formats/Osr_(file_format))
        /// </summary>
        public event OnHitEventsChangedEvt OnHitEventsChanged;
OsuStatus enum
        public enum OsuStatus
        {
            NoFoundProcess,
            Unkonwn,
            Listening,
            Playing,
            Editing,
            Rank
        }

osurtdataprovider's People

Contributors

000hen avatar kedamaovo avatar keytoyze avatar mikirasora avatar someone999 avatar thepoon avatar wanjiaxg avatar

Forkers

aubds aubds

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.