@needle-tools/car-physics
Version:
Car physics for Needle Engine: Create physical cars with ease
30 lines • 1.29 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import { Application, Behaviour, serializable } from "@needle-tools/engine";
export class CarRadio extends Behaviour {
url = "https://stream.laut.fm/gta-classics";
_audio = null;
onEnable() {
if (!this.url)
return;
// const url = "https://stream.laut.fm/los-santos-radio";
this._audio = new Audio(this.url);
this._audio.autoplay = true;
Application.registerWaitForInteraction(() => {
if (!this.enabled)
return;
this._audio?.play();
});
}
onDisable() {
this._audio?.pause();
}
}
__decorate([
serializable()
], CarRadio.prototype, "url", void 0);
//# sourceMappingURL=CarRadio.js.map