Jump to content
View in the app

A better way to browse. Learn more.

OSBot :: 2007 OSRS Botting

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Botre

Members
  • Joined

  • Last visited

Everything posted by Botre

  1. Daim cake is the best
  2. Smoking & procrastination ...
  3. Botre replied to Apaec's topic in Combat & Slayer
    16K views tho
  4. You're supposed to put the spoiler alert before the actual spoiler, noob.
  5. Yup massive respect.
  6. Botre replied to Jordan's topic in Gallery
    ...
  7. The guy who threw the pie is Noël Godin, a well-known belgian anti-capitalist.
  8. I'm impressed as fuck. Very nice job
  9. Botre replied to Smart's topic in Community Discussion
    That's awesome! You should obviously name your baby "OSBot" as a tribute. Feel-good post! First OSB wedding pls
  10. Botre replied to Sky's topic in Spam/Off Topic
    Gratz!
  11. What . am . I . doing . with . my . life.
  12. RIP

    Botre replied to The Hero of Time's topic in Spam/Off Topic
    A good day for the vet community.
  13. Botre replied to Mikasa's topic in Spam/Off Topic
    I'll be driving around in one of these very soon (yn) (not my pic)
  14. Botre replied to Mikasa's topic in Spam/Off Topic
    smex
  15. Sorry but I would hide it.
  16. Not written by me, I slightly optimized / tweaked it. Singleton pattern. package audio; import java.io.File; import java.util.HashMap; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; public class MusicPlayer { private static MusicPlayer instance = new MusicPlayer(); private HashMap<String, Clip> clips = new HashMap<String, Clip>(); private int frameGap; private boolean mute; private MusicPlayer() { } public static MusicPlayer getInstance() { return instance == null ? instance = new MusicPlayer() : instance; } public void load(File file, String name) { if (clips.get(name) != null) { return; } Clip clip; try { AudioInputStream rawStream = AudioSystem.getAudioInputStream(file); AudioFormat baseFormat = rawStream.getFormat(); AudioFormat decodeFormat = new AudioFormat( AudioFormat.Encoding.PCM_SIGNED, baseFormat.getSampleRate(), 16, baseFormat.getChannels(), baseFormat.getChannels() * 2, baseFormat.getSampleRate(), false); AudioInputStream decodedStream = AudioSystem.getAudioInputStream(decodeFormat, rawStream); clip = AudioSystem.getClip(); clip.open(decodedStream); clips.put(name, clip); } catch(Exception e) { e.printStackTrace(); } } public void play(String name) { play(name, frameGap); } public void play(String name, int framePosition) { if (mute) { return; } Clip clip = clips.get(name); if (clip == null) { return; } if (clip.isRunning()) { clip.stop(); } clip.setFramePosition(framePosition); while (!clip.isRunning()) { clip.start(); } } public void stop(String name) { if(clips.get(name) == null) { return; } if(clips.get(name).isRunning()) { clips.get(name).stop(); } } public void resume(String name) { if (mute) { return; } if (clips.get(name).isRunning()) { return; } clips.get(name).start(); } public void loop(String name) { loop(name, frameGap, frameGap, clips.get(name).getFrameLength() - 1); } public void loop(String name, int framePosition) { loop(name, framePosition, frameGap, clips.get(name).getFrameLength() - 1); } public void loop(String name, int loopStartPosition, int loopEndPosition) { loop(name, frameGap, loopStartPosition, loopEndPosition); } public void loop(String name, int framePosition, int loopStartPosition, int loopEndPosition) { stop(name); if(mute) { return; } clips.get(name).setLoopPoints(loopStartPosition, loopEndPosition); clips.get(name).setFramePosition(framePosition); clips.get(name).loop(Clip.LOOP_CONTINUOUSLY); } public void setPosition(String name, int framePosition) { clips.get(name).setFramePosition(framePosition); } public int getFrameLength(String name) { return clips.get(name).getFrameLength(); } public int getFramePosition(String name) { return clips.get(name).getFramePosition(); } public void close(String name) { stop(name); clips.get(name).close(); } }
  17. You would usually pay them in shares instead of a fixed salary
  18. You've already learned to read and transcribe in highschool, university is the next level man. What did you expect ? :p
  19. Doesn't matter. This does:
  20. Veteran ? No no no sir.
  21. Botre replied to Pandemic's topic in Farewells
    Gnome course script is a legend. Glad to have known you!

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.