Beiträge von Madd92

    Ups mein Fehler, eher so:

    Probier's mal so:


    Du meinst der lokale Spieler?


    C
    getVehicleID() {
    	if (!checkHandles() || !isPlayerInAnyVehicle())
    		return 0
    
    
    	return __READMEM(hGTA, dwSAMP, [SAMP_INFO_PTR, SAMP_POOLS, SAMP_POOL_PLAYER, SAMP_LOCALPLAYER, isPlayerDriver() ? 0xAA : 0x5C], "UShort")
    }

    Mir ist gerade noch aufgefallen, dass man bei der ersten Bedingung IsPlayerDriver auch nicht braucht, da GetVehicleModelId sowieso 0 zurückgibt, wenn man in keinem Fahrzeug sitzt.
    Bei der zweiten Bedingung könnte man noch !startjob mit einfügen, damit IsPlayerDriver nicht unnötig häufig aufgerufen wird. Zudem würde ich ebenfalls aus Performance Gründen den Timer eher auf 500 setzen oder ansonsten 300 wenn einem das zu lange dauert:

    So unnötig verschachtelt braucht man es nicht.

    Du hast 3 mal den gleichen Codeblock. Zudem braucht man IsPlayerInAnyVehicle nicht, da IsPlayerDriver das schon impliziert. Und If-Abfragen unterstützen nicht umsonst Expressions, in denen man den &&-Operator nutzen kann.

    So in der Art, je nachdem wann du die Variable dann resetten willst.