Problem mit alt:V Extended

Aus gegebenem Anlass: Sichert eure Backupcodes wenn ihr die Zwei-Faktor-Authentifizierung aktiviert habt!

Infos dazu findet ihr nochmal hier

  • Ich habe 2 Probleme bei denen ich nicht mehr weiterkomme.


    Das erste Problem:

    Code: Konsole
    1. [05:01:19][Error] player.showSubtitle('~r~Deine Waffen wurden zurückgesetzt.', 3500);
    2. [05:01:19][Error] TypeError: player.showSubtitle is not a function


    JavaScript: events.mjs
    1. alt.on('playerConnect', (player) => {
    2. //...
    3. extended.SetupExportsForPlayer(player);
    4. chat.broadcast(`{24FF00}${player.name} hat den Server betreten.`); // wird angezeigt, also wird das Event auch ausgeführt
    5. //...
    6. });
    JavaScript: commands.mjs
    1. export function clearWeapons(player) {
    2. player.showSubtitle('~r~Deine Waffen wurden zurückgesetzt.', 3500);
    3. player.removeAllWeapons();
    4. }

    Was mach ich falsch?


    Das zweite Problem:

    JavaScript: client.mjs
    1. alt.onServer('player:spawn', (player, position) => {
    2. alt.setTimeout(() => {
    3. alt.emitServer('player:onSpawn', player, position);
    4. }, 3500);
    5. });
    JavaScript: server.mjs
    1. alt.onClient('player:onSpawn', (player, position) => {
    2. chat.send(player, `Willkommen ${player.name}`);
    3. chat.send(player, `Position: ${position.x}, ${position.y}, ${position.z}`);
    4. });
    JavaScript: events.js
    1. import { spawnPosition, startOptions } from '../data/options.mjs';
    2. export function spawnPlayer(player) {
    3. alt.emitClient(player, 'player:spawn', player, spawnPosition);
    4. player.model = 'mp_m_freemode_01';
    5. player.health = startOptions.health;
    6. player.spawn(spawnPosition.x, spawnPosition.y, spawnPosition.z, 0);
    7. }

    Ausgabe im Chat:

    Code
    1. Position: undefined, undefined, undefined

    2 Mal editiert, zuletzt von Kafye ()

  • Zum 1. Problem:

    Wie hast du alt:V Extended importiert? Wird es denn überhaupt geladen?


    Zum 2. Problem:

    Wenn du an den Client ein Event verschickst, dann erhält das immer nur 1 einziger Spieler (außer du gibst als Spieler null an, dann wird es an alle gesendet), du brauchst also den ersten Parameter player nicht mitsenden. Um Clientside heraus zu finden wer das gerade empfängt verwende einfach alt.Player.local (das gibt dir eine Spieler Instanz zurück)


    Wenn du vom Client an den Server schickst, ist der erste Parameter beim Event auf dem Server immer automatisch der Spieler, du musst also nur den Positions Parameter übergeben, und den Spieler Parameter entfernen, dann sollte es so klappen.

    webdev - js, nodejs

    :S:S:S


    Kontakt

    Discord: LeonMrBonnie#9840

  • Danke Problem 2 habe ich gelöst bekommen!


    Zu Problem 1:

    Das wird geladen und auch aufgerufen, sonst würde die Konsole ja auch ne Fehlermeldung herausgeben.

    und so binde ich es ein

    Code
    1. import * as extended from 'server-extended';
  • Dazu muss ich aber sagen, dass auch bspw. player.sendMessage aus der alt:v Chat Extended nicht funktioniert, nur chat.send(..)

    Wo verwendest du denn diese clearWeapons Funktion?

    das hab ich unter commands/functions.mjs

    registrieren tu ich es in der commands.mjs

    Code
    1. chat.registerCmd('clearweapons', commandFunctions.clearWeapons);

    Einmal editiert, zuletzt von Kafye ()