Ja, das wurde bereits mal erwähnt.
Das Tutorial ist bald ein Jahr alt, deswegen ist es auch nicht mehr aktuell.
Werde die wochen mal ein aktuelleres Tutorial schreiben, aber danke für den Hinweis.
mfg ![]()
Ja, das wurde bereits mal erwähnt.
Das Tutorial ist bald ein Jahr alt, deswegen ist es auch nicht mehr aktuell.
Werde die wochen mal ein aktuelleres Tutorial schreiben, aber danke für den Hinweis.
mfg ![]()
Alles anzeigen
Alles klar, melde dich per PN wenn du die Guthabenkarte benötigst
//E: Würde die Karte auch für 24-25€ verkaufen :')
//E: Push 17.01.2015
//E: Push 19.01.2015
//E: Push 21.01.2015
//E: Push 23.01.2015
//E: Push 25.01.2015
//E: Push 27.01.2015
//E: Die Karte verkaufe ich nun für 20€ - Noch ist sie zu haben
Wenn du sie hier nicht verkauft bekommst, dann frag doch einen Freund von dir.
Gibt doch sicherlich einige in Ab die Congstar benutzen ;)..gehe einfach in die City Galery rein, bzw Müller und biete den Leuten das für 20€ an, dann werden sie es nicht beim Geschäft sondern bei dir kaufen!
mfg ![]()
Frage doch den Coder des UCPs, in dem Falle T4125Gamer !
Bezahl ihm ein bisschen mehr Geld sagen wir 15-20€ und vielleicht macht er es ja aus Kulanz etwas günstiger!
mfg ![]()
Bisher wurde es leider noch nicht verkauft.
Vielleicht Codest du noch ein schönes Design dazu, kannst dementsprechend auch mehr verlangen ![]()
mfg ![]()
@CIBERKILLER:
Wir benutzen momentan kein gesponserten "mist" außer das Forum bis jetzt.
Das Forum ist bei uns Online. Komisch.
Ja dies wissen wir, wir werden uns bemühen uns eine .de Donaim zu holen.
Okay, anscheinend fuscht bei mir wieder Kabel Deutschland etwas herum..
Für eine .de Domain muss man sich in keinster Weise bemühen ![]()
Könnt ihr euch beispielsweise bei Domain Factory oder Nitrado holen...
mfg ![]()
3 Sachen.
mfg ![]()
Eigentlich ja.
Ich kenne mich halt damit nicht so gut aus
Wenn du dich mit PHP auskennst, würde ich eins selber schreiben!
Ansonsten Easy-WI oder GamePanelX
mfg ![]()
Ich habe ja auch das GamePanelX benutzt, hatte nur gelegentlich Schwierigkeiten damit...... ![]()
Am besten zeigst du mir mal wie du Template Konfiguration hast.
Außerdem gib dem kompletten Pfad mal 777 Berechtigung!
mfg ![]()
Wie oft hast du das "Panel" nun schon verkauft ?
mfg ![]()
Ja, habe ich gemerkt.

Arbeite übrigens momentan an einem Hosting Panel, ist aber glaube schon bekannt ![]()
mfg ![]()
Achso, ich dachte ich muss das mit der QueryAPI machen.
Mit der RCON Api habe ich es jetzt auch hinbekommen.
Ja Slash, ich kann schon den Code analysieren, nur das Problem ist, das ich noch Anfänger bin und als ich den Code hingeschrieben hatte, kam ein PHP Fehler auf ![]()
Funktioniert nun soweit alles, vielen dank!
mfg ![]()
Mit dieser API http://forum.sa-mp.com/showthread.php?t=104299
Ich habe sie schon mal benutzt, damals zu mindestens, komme jetzt aber nicht mehr mit ihre zurecht!
mfg ![]()
Hallo!
Und zwar wollte ich mal fragen, wie ich am besten einen SAMP Online Status angehen soll, habs mit fsockopen nicht hinbekommen! (Es ging nicht)
mfg ![]()
Hallo!
Und zwar frage ich mich, wieso mein "Haus System" nicht Funktionieren will...
Hier ist mal der Code, in der DB wird ein Eintrag gemacht aber das Pickup erstellt er nicht wirklich, das gleiche gilt für das TextLabel!
Function OnHouseCreated(template_id, house_x, house_y, house_z, house_ix, house_iy, house_iz, house_ir, h_price, h_score, h_int)
{
hInfo[template_id][h_x] = house_x;
hInfo[template_id][h_y] = house_y;
hInfo[template_id][h_z] = house_z;
hInfo[template_id][h_ix] = house_ix;
hInfo[template_id][h_iy] = house_iy;
hInfo[template_id][h_iz] = house_iz;
hInfo[template_id][h_ir] = house_ir;
hInfo[template_id][h_preis] = h_price;
hInfo[template_id][h_level] = h_score;
hInfo[template_id][h_interior] = h_int;
CallLocalFunction("updateHouse", "ii", template_id, 0);
printf("OnHouseCreated: %i", cache_insert_id(Handle));
return hInfo[template_id][h_id] = cache_insert_id(Handle);
}
Function OnHouseLoad()
{
for(new i;i<cache_get_row_count(Handle);i++)
{
/*
h_level,
h_preis,
h_interior,
Text3D:h_text,
h_pickup,
h_besitzer[MAX_PLAYER_NAME],
h_rentable,
*/
if(cache_get_field_content_float(0, "h_x", Handle) == 0.0)continue;
//new id=getFreeHausID();
hInfo[i][h_x] = cache_get_field_content_float(i, "h_x", Handle);
hInfo[i][h_y] = cache_get_field_content_float(i, "h_y", Handle);
hInfo[i][h_z] = cache_get_field_content_float(i, "h_z", Handle);
hInfo[i][h_ix] = cache_get_field_content_float(i, "h_ix", Handle);
hInfo[i][h_iy] = cache_get_field_content_float(i, "h_iy", Handle);
hInfo[i][h_iz] = cache_get_field_content_float(i, "h_iz", Handle);
hInfo[i][h_ir] = cache_get_field_content_float(i, "h_ir", Handle);
hInfo[i][h_level] = cache_get_field_content_int(i, "h_level", Handle);
hInfo[i][h_interior] = cache_get_field_content_int(i, "h_interior", Handle);
hInfo[i][h_rentable] = cache_get_field_content_int(i, "h_rentable", Handle);
new tmp_name[MAX_PLAYER_NAME];
cache_get_field_content(i, "h_besitzer", tmp_name, Handle);
strmid(hInfo[i][h_besitzer], tmp_name, 0, sizeof(tmp_name), sizeof(tmp_name));
hInfo[i][h_id]=cache_get_field_content_int(i, "h_id", Handle);
CallLocalFunction("updateHouse","");
}
return 1;
}
Function updateHouse()
{
new string[256];
for(new houseid;houseid<sizeof hInfo;houseid++)
{
DestroyPickup(hInfo[houseid][h_pickup]);
Delete3DTextLabel(hInfo[houseid][h_text]);
if(!strlen(hInfo[houseid][h_besitzer]))
{
format(string, sizeof string, "[{0091FF}Haus zum Verkaufen{FFFFFF}]\n\nPreis: %i{0FFF00}$\n{FFFFFF}Level: %i\n\nGebe '{EBFF00}/buyhouse{FFFFFF}' ein um das Haus zu kaufen!",
hInfo[houseid][h_preis], hInfo[houseid][h_level]);
}
else if(strlen(hInfo[houseid][h_besitzer])>0)
{
if(!hInfo[houseid][h_rentable])
{
format(string, sizeof string, "[{0091FF}Haus zum Betrachten{FFFFFF}]\n\nBesitzer: %s\n\nDrücke '{EBFF00}ENTER{FFFFFF}' um das Haus zu betreten",
hInfo[houseid][h_besitzer]);
}
}
hInfo[houseid][h_pickup] = CreateDynamicPickup(1273, 1, hInfo[houseid][h_x], hInfo[houseid][h_y], hInfo[houseid][h_z], 0, hInfo[houseid][h_interior]);
hInfo[houseid][h_text] = Create3DTextLabel(string, COLOR_WHITE, hInfo[houseid][h_x], hInfo[houseid][h_y], hInfo[houseid][h_z], 25.0, 0, 1);
}
return 1;
}
mfg ![]()
Machs doch unter dem Callback OnPlayerWeaponShot
Einfach durch die Parameter genau auf dich zurecht schneiden und dann ein "return 0;" damit der Schuss nicht Synchronisiert wird.
Das ganze funktioniert leider nur mit Schusswaffen.
Das ganze wird doch nicht nur durch ein return 0, async oder ?
mfg ![]()
Was wird denn bei deinem Debug geprintet?
Ich habe das Problem bereits behoben, vielen Dank!
mfg ![]()
Du könntest auch http://wiki.sa-mp.com/wiki/SetPlayerTeam nutzen, siehe erste 'Note'.
Daran habe ich auch schon gedacht, habe ich ja bei den COPS auch so gemacht.
Polizisten können sich nicht gegenseitig beschädigen... ![]()
Nur, ich habe dort ein Bedenken!
Sagen wir ich gebe jedem Zivilist der keinen Wanted hat Team 2, Team 2 haben übrigens auch Mitglieder vom SFPD, dann können sich die Personen auch nicht verletzen wenn sie keine Wanteds haben.
mfg ![]()
Ich würd sagen, dass OnPlayerWeaponShot hierfür besser geeignet ist. Du musst berücksichtigen, dass bei OnPlayerTakeDamage der Spieler trotz dem Code Schaden erleidet, und dieser dann eben unmittelbare wieder beglichen wird.
Wie kann ich dann den Schaden ermitteln der entstanden ist?
mfg ![]()
Hallo!
Ich habe aktuell vor, den Spieler unverwundbar vor Polizisten zu machen wenn er keine Wanted's hat.
Mein aktueller Code:
Function OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
PlayerPlaySound(issuerid,17802,0.0,0.0,0.0);
new Float:h;
GetPlayerHealth(issuerid,h);
if(h>100.0) SetPlayerHealth(issuerid,100);
if(getPlayerTeam(issuerid) == TEAM_COPS && getPlayerTeam(playerid) == TEAM_ZIVI)
{
if(!getPlayerWanteds(playerid))
{
GetPlayerHealth(playerid,h);
SetPlayerHealth(playerid,h+amount);
}
return 1;
}
return 1;
}
Dies Funktioniert aber nicht einwandfrei, wie mache ich es nun dass das Fahrzeug und der Charakter an sich nicht beschädigt werden können?
mfg ![]()