Perfekt
Danke
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Alles anzeigen
Jeffry: Okay danke, das habe ich nun gemacht. Ich habe aber Probleme die Include von Slice richtig einzusetzen, kannst du mir bitte helfen?
Erhalte diese Errors:
C:\Users\Dave\Desktop\JustMe's Wonderland\pawno\include\YSI\y_hooks/impl.inc(2337) : error 021: symbol already defined: "OnPlayerTakeDamage"
C:\Users\Dave\Desktop\JustMe's Wonderland\pawno\include\YSI\y_hooks/impl.inc(2391) : error 017: undefined symbol "weaponid"
C:\Users\Dave\Desktop\JustMe's Wonderland\pawno\include\YSI\y_hooks/impl.inc(2393) : error 017: undefined symbol "damagedid"
C:\Users\Dave\Desktop\JustMe's Wonderland\gamemodes\LnD.pwn(393) : error 021: symbol already defined: "WC_OnPlayerDamage"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase4 Errors.
Jeffry: So sieht die impl.inc aus (ein Teil davon)
Spoiler anzeigen
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
P:2("Hooks_OnPlayerClickPlayer called: %d, %d, %d", playerid, clickedplayerid, source);
new
end = _:YSI_g_sCallbackEnd[ALS_OnPlayerClickPlayer],
start = _:YSI_g_sCallbackStart[ALS_OnPlayerClickPlayer],
ret = ALS_R_PlayerClickPlayer;
while (start++ != end)
{
#emit PUSH.S source
#emit PUSH.S clickedplayerid
#emit PUSH.S playerid
#emit PUSH.C 12
#emit CONST.alt YSI_g_sCallbackAddresses
#emit LOAD.S.pri start
//#emit INC.pri
//#emit STOR.S.pri start
#emit LIDX
#emit MOVE.alt
#emit LCTRL 6
#emit ADD.C 24
#emit PUSH.pri
#emit MOVE.pri
#emit SCTRL 6
#emit MOVE.alt
#emit CONST.pri 0xFFFFFFFE
#emit AND
#emit PUSH.pri
#emit LOAD.S.pri ret
#emit AND
#emit POP.alt
#emit OR
#emit STOR.S.pri ret
if (ret < 0) return ret + 1;
}
return ret;
}
#if defined _ALS_OnPlayerClickPlayer
#undef OnPlayerClickPlayer
#else
#define _ALS_OnPlayerClickPlayer
#endif
#define OnPlayerClickPlayer S@@_OnPlayerClickPlayer
HOOK_FORWARD<PlayerClickPlayer>Spoiler anzeigen public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
{
P:2("Hooks_OnPlayerTakeDamage called: %d, %d, %f, %d, %d", playerid, issuerid, Float:amount, weaponid);
new
end = _:YSI_g_sCallbackEnd[ALS_OnPlayerTakeDamage],
start = _:YSI_g_sCallbackStart[ALS_OnPlayerTakeDamage],
ret = ALS_R_PlayerTakeDamage;
while (start++ != end)
{
#emit PUSH.S weaponid
#emit PUSH.S amount
#emit PUSH.S issuerid
#emit PUSH.S playerid
#emit PUSH.C 20
#emit CONST.alt YSI_g_sCallbackAddresses
#emit LOAD.S.pri start
//#emit INC.pri
//#emit STOR.S.pri start
#emit LIDX
#emit MOVE.alt
#emit LCTRL 6
#emit ADD.C 24
#emit PUSH.pri
#emit MOVE.pri
#emit SCTRL 6
#emit MOVE.alt
#emit CONST.pri 0xFFFFFFFE
#emit AND
#emit PUSH.pri
#emit LOAD.S.pri ret
#emit AND
#emit POP.alt
#emit OR
#emit STOR.S.pri ret
if (ret < 0) return ret + 1;
}
return ret;
}
#if defined _ALS_OnPlayerTakeDamage
#undef OnPlayerTakeDamage
#else
#define _ALS_OnPlayerTakeDamage
#endif
#define OnPlayerTakeDamage S@@_OnPlayerTakeDamage
HOOK_FORWARD<PlayerTakeDamage>Spoiler anzeigen public OnPlayerDamage(&playerid, &Float:amount, &issuerid, &weapon, &bodypart)
{
P:2("Hooks_OnPlayerGiveDamage called: %d, %d, %f, %d, %d", playerid, damagedid, Float:amount, weaponid);
new
end = _:YSI_g_sCallbackEnd[ALS_OnPlayerGiveDamage],
start = _:YSI_g_sCallbackStart[ALS_OnPlayerGiveDamage],
ret = ALS_R_PlayerGiveDamage;
while (start++ != end)
{
#emit PUSH.S weaponid
#emit PUSH.S amount
#emit PUSH.S damagedid
#emit PUSH.S playerid
#emit PUSH.C 20
#emit CONST.alt YSI_g_sCallbackAddresses
#emit LOAD.S.pri start
//#emit INC.pri
//#emit STOR.S.pri start
#emit LIDX
#emit MOVE.alt
#emit LCTRL 6
#emit ADD.C 24
#emit PUSH.pri
#emit MOVE.pri
#emit SCTRL 6
#emit MOVE.alt
#emit CONST.pri 0xFFFFFFFE
#emit AND
#emit PUSH.pri
#emit LOAD.S.pri ret
#emit AND
#emit POP.alt
#emit OR
#emit STOR.S.pri ret
if (ret < 0) return ret + 1;
}
return ret;
}
#if defined _ALS_OnPlayerGiveDamage
#undef OnPlayerGiveDamage
#else
#define _ALS_OnPlayerGiveDamage
#endif
#define OnPlayerGiveDamage S@@_OnPlayerGiveDamage
HOOK_FORWARD<PlayerGiveDamage>Spoiler anzeigen #if !defined _ALS_OnPlayerLogin
forward OnPlayerLogin(playerid, uid);
#endif -
Das Callback OnPlayerTakeDamage das du eingefügt hast wird wohl über einen Hook schon definiert sein. Die Variablen die als undefined angezeigt werden scheinen dazuzugehören.
Da ich weder die Include kenne noch habe ist es am sinnvollsten wenn du dich mit Slice in Verbindung setzt, der wird dir sagen können, was du machen musst, damit es klappt.Alternativ musst du eben mal suchen, ob du das irgendwo über einen Hook definiert findest, dann kannst du den entsprechenden Code ja dort einfügen.
-
http://wiki.sa-mp.com/wiki/Keys
Wo bzw., wie ist der Key für die Taste Z ?
Ich glaub ich bin Blind oder es ist einfach nicht bei.
-
Der KEY_YES steht für das Z, weil auf der amerikanischen Tastatur das Y an der Stelle ist.
-
Der KEY_YES steht für das Z, weil auf der amerikanischen Tastatur das Y an der Stelle ist.
Ahhh genau, danke dir Jeffry.
-
kurze frage weis einer warum ich keinen Thread eröffnen kann unter Scripting Base ?
-
Das beste wird wohl sein, wenn du einen der Moderatoren kontaktierst, die können dir weiterhelfen.
-
Wieso wird die Animation nicht ausgeführt? Habe es auch mehrmals probiert, ging nicht.
ocmd:sit(playerid,params[])
{
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_SITTING);
return 1;
} -
Ich bin mir nicht sicher ob das funktionieren wird, aber warum sollte man das nicht ausprobieren.
Füge vor SetPlayerSpecialAction mal folgendes ein:
ClearAnimations(playerid);Funktioniert die Animation dann?
-
-
Ich bin mir nicht sicher ob das funktionieren wird, aber warum sollte man das nicht ausprobieren.
Füge vor SetPlayerSpecialAction mal folgendes ein:
ClearAnimations(playerid);Funktioniert die Animation dann?
Leider nein.
-
Leider nein.
Nimm anstatt der Special Action eine der 2 Animation, entweder://1. Chair sit:
ApplyAnimation(playerid,"BAR","dnk_stndF_loop",4.0,1,0,0,0,0);//2. Ground sit
ApplyAnimation(playerid,"BEACH", "ParkSit_M_loop", 4.0, 1, 0, 0, 0, 0); -
Hi ich habe ein Werbetafel System gemacht aber der Text wird nicht angezeigt

-
Mache einen neuen Thread auf und poste den Code der nicht funktioniert. Ohne Code können wir dir nicht helfen.
-
Ich möchte dass das "Willkommen auf" nur einmal auf dem Objekt steht doch bisher steht es 100 mal drauf
new tutob = CreateObject(18981, -2682.01831, 1594.34729, 122.65980, 0.00000, 0.00000, 90.00000); SetObjectMaterialText(tutob, "Willkommen {FFFFFF}auf", 0, OBJECT_MATERIAL_SIZE_512x512 , "Arial", 255, 1, 0xFFFF8200,0, OBJECT_MATERIAL_TEXT_ALIGN_CENTER); -
Nutze diese unsichtbaren Objekte, die haben keine sich wiederholende Textur:
Code19475 Plane001 19476 Plane002 19477 Plane003 19478 Plane004 19479 Plane005 19480 Plane006 19481 Plane007 19482 Plane008 19483 Plane009Bei deinem Objekt ist das Problem, dass die Textur sich alle paar Zentimeter wiederholt, und somit x mal ersetzt wird.
-
Kann man Irgendwo die Größer von denen sehen?
-
Wieso geht der Code nicht mehr? Vorher ging der.
PHP
Alles anzeigenfor(new i = 0; i<MaxHaus; i++) { printf("I: %d X: %f Y:%f Z: %f", i, Haus[i][hX], Haus[i][hY], Haus[i][hZ]); if(Haus[i][hArt] == 0)continue; { printf("I: %d X: %f Y:%f Z: %f", i, Haus[i][hX], Haus[i][hY], Haus[i][hZ]); if(Haus[i][hZimmerA] > Haus[i][hZimmerM])continue; { SetPlayerPos(playerid,Haus[i][hX],Haus[i][hY],Haus[i][hZ]); printf("I: %d X: %f Y:%f Z: %f", i, Haus[i][hX], Haus[i][hY], Haus[i][hZ]); ShowPlayerDialog(playerid,DIALOG_KEINEFUNKTION,DIALOG_STYLE_MSGBOX,"{FFFFFF}Sergey - {FF0000}Grundstück besorgen","{FF0000}Sergey:{FFFFFF} Okay, also hier ist eins Frei.\nJetzt musst du '/mieten' eingeben um in das Grundstück einzumieten.","Okay",""); return 1; } } }Es kommt überall 0
-
Kann man Irgendwo die Größer von denen sehen?
Da die unsichtbar sind leider nicht.
[KoSoVa]:
Mache bitte einen neuen Thread auf und poste wie du die Häuser lädst. Dort liegt wahrscheinlich der Fehler. -
Andere sichtbare Objekte gibt es nicht?
-