Heyho,
es gab doch mal so ein RPG CITY Remade Script.
Wollte mal fragen ob es noch jemand hat und es mir schicken könnte.
Danke schonmal im vorraus
Heyho,
es gab doch mal so ein RPG CITY Remade Script.
Wollte mal fragen ob es noch jemand hat und es mir schicken könnte.
Danke schonmal im vorraus
Mit arbeiten...
Guten Tag liebe Community!
ich habe mich entschlossen mich als Teammitglied anzubieten. Mein Name ist Maurice ich bin 18 Jahre jung und komme aus Niedersachsen. Momentan mache ich eine Ausbildung als KFZ - Mechaniker,
durchschnittlich bin ich von 17:30 bis 24 Uhr erreichbar am Wochenende natürlich mehr. Meine Erfahrungen liegen in den Bereich PAWN, HTML, CSS, PHP sowie MySQL.
Ich habe bereits in vielen Projekten mitgewirkt, deshalb ich eine gute Erfahrung besitze.
Alles weitere kann per PN / Teamspeak Gespräch geklärt werden. ( Hauptsächlich SA-MP ).
Ich biete mich als:
Manager,
Admin,
UCP entwickler und Scripter
sowie Supporter.
Kontaktdaten:
breadfish per PN!
Wenn keine Interesse besteht, bitte nicht hier auf das Thema antworten.
Weißt jemand zufällig die Bezeichnung für die Taste 2 ? Kein Numpad.
sa-mp.com ist leider down
Hallo, ich hätte eine Frage und zwar würde ich ganz gerne im Dialog eingeben was man einzahlen soll in Euro und Cent beträgen. Spricht "30, 20" Euro. Wie mache ich eine Abfrage das er auch Cent betrag eingibt und wie frage ich dann nur den Cent betrag ab ?
Warum kann man trotzdem ins Minus gehen ?
Beispiel habe 0 Euro - und möchte was für 20k kaufen. Was eigentlich nicht möglich ist. Aber es geht trozdem Code:
stock GetPlayerEuro(playerid,euro,cent){if(SpielerDaten[playerid][pEuro] >= euro&&SpielerDaten[playerid][pCent] >= cent)return 1;if(SpielerDaten[playerid][pCent] < cent && SpielerDaten[playerid][pEuro] > euro){new zahl1,zahl2;zahl1=SpielerDaten[playerid][pEuro];zahl2=SpielerDaten[playerid][pCent];zahl1-=1;zahl2+=100;if(zahl1 >= euro&&zahl2 >= cent)return 1;}return 0;}
Und hier meine Abrfrage:
if((GetPlayerEuro(playerid, - 20000, 0)) < 0)return SendClientMessage(playerid, GRAU, "Hmm.. ich habe wohl zu wenig Geld für ein Fahrzeug.");
//Edit lösung gefunden
Entfernst du auch den kompletten Befehl ? Oder lässt zu zufällig ein bis zwei klammern da ?
Am einfachsten mal crashdetect laden, das Plugin wird dir das genau im Log sagen
[22:14:47] [debug] Run time error 4: "Array index out of bounds"
[22:14:47] [debug] Attempted to read/write array element at index 5 in array of size 3
[22:14:47] [debug] AMX backtrace:
[22:14:47] [debug] #0 000f5674 in public ocmdOnPlayerCommandText (0, 4856860) from richtig.amx
[22:14:47] [debug] #1 native CallLocalFunction () from samp-server.exe
[22:14:47] [debug] #2 000007f4 in public OnPlayerCommandText (0, 4856828) from richtig.amx
Er printet auch nur bis "2"
D.h das hier if(Carlist[playerid][CarKey[playerid]][Typ]==-1) ein Fehler ist, ich habe das bereits schon ausgeklammert allerdings kommt dann immer noch Server_: Unkown..
#Edit fehler gefunden, danke @Kaliber
Hallo, und zwar habe ich eine Frage, wenn ich den Befehl benutze kommt immer Server: Unkown Command.. Warum ?
if(strcmp("/buycar", cmd, true) == 0)
{
print("1");
if(IsPlayerInAnyVehicle(playerid))
{
print("2");
if(Carlist[playerid][CarKey[playerid]][Typ]==-1)
{
print("3");
new preis = Kaufliste[Spectating[playerid]][Preis];
if(preis <= PlayerInfo[playerid][pCash])
{
print("4");
new autohaus = Kaufliste[Spectating[playerid]][Autohaus];
GivePlayerMoneys(playerid, - preis);
Carlist[playerid][CarKey[playerid]][Typ] = Spectating[playerid];
Carlist[playerid][CarKey[playerid]][pos_x] = Autospawns[autohaus][pos_x];
Carlist[playerid][CarKey[playerid]][pos_y] = Autospawns[autohaus][pos_y];
Carlist[playerid][CarKey[playerid]][pos_z] = Autospawns[autohaus][pos_z];
Carlist[playerid][CarKey[playerid]][z_angle] = Autospawns[autohaus][z_angle];
Carlist[playerid][CarKey[playerid]][SpawnSaveX] = Autospawns[autohaus][pos_x];
Carlist[playerid][CarKey[playerid]][SpawnSaveY] = Autospawns[autohaus][pos_y];
Carlist[playerid][CarKey[playerid]][SpawnSaveZ] = Autospawns[autohaus][pos_z];
Carlist[playerid][CarKey[playerid]][SpawnSaveRot] = Autospawns[autohaus][z_angle];
Carlist[playerid][CarKey[playerid]][Status] = 0;
Carlist[playerid][CarKey[playerid]][Lock] = 0;
Carlist[playerid][CarKey[playerid]][TankVolumen] = 100;
Carlist[playerid][CarKey[playerid]][Carid] = CreateTunedCar(playerid, CarKey[playerid]);
Carlist[playerid][CarKey[playerid]][Meter] = 0;
Gas[Carlist[playerid][CarKey[playerid]][Carid]] = Carlist[playerid][CarKey[playerid]][TankVolumen];
SetPlayerCheckpoint(playerid,Carlist[playerid][CarKey[playerid]][pos_x],Carlist[playerid][CarKey[playerid]][pos_y],Carlist[playerid][CarKey[playerid]][pos_z],10.0);
ForAllPlayers(i){
if(IsPlayerConnected(i)){
SetVehicleParamsForPlayer(Kaufliste[Spectating[playerid]][Carid], i, 0, 0);
}}
TogglePlayerControllable(playerid,1);
RemovePlayerFromVehicle(playerid);
format(string, sizeof(string), "Du hast dir erfolgreich für %s$ ein/einen %s gekauft!",GetPoint(preis),Kaufliste[Carlist[playerid][CarKey[playerid]][Typ]][Name]);
SendClientMessage(playerid, COLOR_RED, string);
SendClientMessage(playerid, COLOR_GREEN, "Wenn du dein Fahrzeug zerstörst, gib /fixcar ein.");
SendClientMessage(playerid, COLOR_GREEN, "Mit /carlock kannst du dein Fahrzeug für andere Leute freigeben oder abschließen.");
SendClientMessage(playerid, COLOR_GREEN, "Mehr Befehle kannst du unter /carhelp sehen.");
SendClientMessage(playerid, COLOR_YELLOW, "Dein Auto steht am Ausgabepunkt(Roter Marker) bereit! Viel Spaß beim Fahren!");
GetPlayerName(playerid, sendername, sizeof(sendername));
if(Kaufliste[Spectating[playerid]][Autohaus] == 2)
{
BizInfo[13][bTill] += (preis/100)*19;
}
Spectating[playerid] = -1;
}
else
{
format(string, sizeof(string), " Du hast nicht genug Geld für das Auto (benötigt: $%i)!", preis);
SendClientMessage(playerid, COLOR_ERRORTEXT, string);
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_ERRORTEXT, " Du besitzt bereits ein Auto auf dem ausgewählten Schlüssel!");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_ERRORTEXT, " Du besichtigst kein Auto !");
return 1;
}
return 1;
}
./golddeagle entfernen
Hallo,
und zwar ist heute mein PC abgestürzt dabei hatte ich meine Script.pwn dabei offen. ( War schon fertig compilet )
Und dann habe ich gerade eben mein Script geöffnet und es fehlen einfach rum 50k Zeilen ?
Also davor 80k jetzt 30k Zeilen.... Weiß jemand wie ich es wieder zurück mache.. Und hatte schonmal jemand so ein Problem ?
Warum so viel langweile ?
Weil dieser Siedler (Daniel Blaser) Geld geil ist macht kaum was am Server aber Geld dafür verlangen wollen.
Er zieht das Geld von den Kindern aus der Tasche.
Und mit dem releasen versuche ich zu vermeiden das die Kinder noch mehr Geld aus der Tasche gezogen wird.
Echt dreist von dir oder ?
"Geld verlangen" oder verlangt er den Geld ? Ich mein es ist eine freiwillige Sache ob man etwas für den Server spendet oder nicht, der Server kann jetzt ohne Problem bis 2021 laufen.. Wo zieht er das Geld von der Tasche ? Entweder man erarbeitet sich alles InGame ( Was auch möglich ist ) oder man kauft sich halt Premium o. UBB Cars. Und Daniel macht momentan echt viel für den Server, das heißt für mich das er noch einiges an sein Projekt sieht.
https://gameserver-sponsor.me Auch ohne Probleme
Du kannst die Funktion mysql_num_rows verwenden
Danke dir, nun zur Funktion: Es funktioniert nicht, top.
Also zum Erklären: Es wird per Programm in eine MySQL Tabelle eine Spalte erstellet und "banID" auf "1" gesetzt. ( Das funktioniert soweit alles )
Nur werde ich nicht im Spiel gebannt, bzw die Spalte wird nicht auf "0" gesetzt Code:
@Check();@Check(){for(new i, kn[MAX_PLAYER_NAME],fields,string[200], query[228];i<mysql_num_rows(MySqlConnection);i++){if(cache_get_field_content_int(i, "banID", MySqlConnection)){cache_get_field_content(i, "banName", kn);if(strlen(kn)>0){format(query,sizeof(query),"UPDATE `banPlayer` SET `banID`=0 WHERE `banName`='%s'", kn);mysql_function_query(MySqlConnection,query,false,"","");Ban(ReturnID(kn));}}if(i>=mysql_num_rows(MySqlConnection))break;}return;}
Also er soll nur jemanden kicken, sobald die Spalte existiert und die Spalte: banID auf "1" steht.
Hallo @Kaliber
leider gibt es die Funktion cache_num_rows() auch nicht. Ich habe mal mein Include in pastebin gepostet:
https://pastebin.com/3d68h0rb
Hier ist noch mal mein Code:
@CheckACPKick();
@CheckACPKick(){
for(new i, kn[MAX_PLAYER_NAME],string[200], query[128];i<cache_get_row_count(MySqlConnection);i++){
if(cache_get_field_content_int(i, "ban", MySqlConnection)){
cache_get_field_content(i, "bann", kn);
if(strlen(kn)>0){
mysql_format(MySqlConnection, query, sizeof query, "UPDATE `test` SET `ban`=0 WHERE `bann`='%e'", kn);
mysql_function_query(MySqlConnection,query,false,"","");
}
}
if(i>=cache_get_row_count(MySqlConnection))break;
}
return;
}
Errors sind die gleichen wie oben im Thread zu sehen.
Doofe Frage, aber wieso nutzt du R31, wenn es inzwischen schon R41-4 gibt?
Etwas älteres Script, wollte damit nur Funktionen testen. ( Auspropieren )
Guten Tag,
leider habe ich folgenden Fehler: error 017: undefined symbol "cache_get_row_count"
Und ich weiß leider nicht was die alternative zu dem ist, anscheinend wurde diese Funktion entfernt:
Kleiner Code ausschnitt:
for(new i, kn[MAX_PLAYER_NAME],string[200], query[128];i<cache_get_row_count(MySqlConnection);i++){
if(cache_get_field_content_int(i, "banning", MySqlConnection)){
cache_get_field_content(i, "grundname", kn);
MySQL Version:
/**
* MySQL plugin R31
*/
( lt. Include )
Alles anzeigenTja im Endeffekt 1:1 rauskopieren und in einen /enter Befehl packen
Allerdings gibt es ja dann das Problem mit der Abfrage if(pickupid ==.
Tja was das angeht musst du halt hier schauen, wo (also an welcher Position) die jeweiligen Pickups erstellt werden und anschließend musst du prüfen:
if(IsPlayerInRangeOfPoint(playerid, 2.0, x,y,z))
x,y,z entsprechen in dem Beispiel den Koordinaten von dem Pickup.
Musst du einzeln raussuchen und dann ersetzen
Bei der Schleife ist da identisches, da hast du dann wahrscheinlich sowas wie:
HouseInteriors[i][outsideX],HouseInteriors[i][outsideY],HouseInteriors[i][outsideZ]
Was du dann in die IsPlayerInRangeOfPoint Abfrage packen kannst
Ja gut, klingt ja logisch irgendwie ? xD
Werde es morgen mal machen
Danke dir
Guten Tag,
ich habe eine Frage wie schreibe ich die Pickup funktion am besten zu einen /Enter Befehl ?
public OnPlayerPickUpDynamicPickup(playerid, pickupid)
{
if(GetPVarInt(playerid, "HousePickupCooldown") < gettime())
{
if(InHouse[playerid] == INVALID_HOUSE_ID) {
foreach(new i : Houses)
{
if(pickupid == HouseData[i][HousePickup])
{
SetPVarInt(playerid, "HousePickupCooldown", gettime() + HOUSE_COOLDOWN);
SetPVarInt(playerid, "PickupHouseID", i);
if(!strcmp(HouseData[i][Owner], "-")) {
new string[64];
format(string, sizeof(string), "{2ECC71}$%s", convertNumber(HouseData[i][Price]));
ShowPlayerDialog(playerid, DIALOG_BUY_HOUSE, DIALOG_STYLE_MSGBOX, "Haus zu verkaufen", string, "Kaufen", "Schließen");
}else{
if(HouseData[i][SalePrice] > 0 && strcmp(HouseData[i][Owner], Player_GetName(playerid)))
{
new string[64];
format(string, sizeof(string), "{2ECC71}$%s", convertNumber(HouseData[i][SalePrice]));
ShowPlayerDialog(playerid, DIALOG_BUY_HOUSE_FROM_OWNER, DIALOG_STYLE_MSGBOX, "Haus zu verkaufen", string, "Kaufen", "Schließen");
return 1;
}
switch(HouseData[i][LockMode])
{
case LOCK_MODE_NOLOCK: SendToHouse(playerid, i);
case LOCK_MODE_KEYS:
{
new gotkeys = Iter_Contains(HouseKeys[playerid], i);
if(!gotkeys) if(!strcmp(HouseData[i][Owner], Player_GetName(playerid))) gotkeys = 1;
if(gotkeys) {
SendToHouse(playerid, i);
}else{
SendClientMessage(playerid, 0xE74C3CFF, "Du besitzt keine Schlüssel für dieses Haus.");
}
}
case LOCK_MODE_OWNER:
{
if(!strcmp(HouseData[i][Owner], Player_GetName(playerid))) {
SetPVarInt(playerid, "HousePickupCooldown", gettime() + HOUSE_COOLDOWN);
SendToHouse(playerid, i);
}else{
SendClientMessage(playerid, 0xE74C3CFF, "Nur der Besitzer kann dieses Haus betreten");
}
}
}
}
}
}
}else{
for(new i; i < sizeof(HouseInteriors); ++i)
{
if(pickupid == HouseInteriors[i][intPickup])
{
SetPVarInt(playerid, "HousePickupCooldown", gettime() + HOUSE_COOLDOWN);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid, 0);
SetPlayerPos(playerid, HouseData[ InHouse[playerid] ][houseX], HouseData[ InHouse[playerid] ][houseY], HouseData[ InHouse[playerid] ][houseZ]);
InHouse[playerid] = INVALID_HOUSE_ID;
return 1;
}
}
} }
Danke
Gibt es eigentlich noch Server wie New Dawn (EDM etc.)? Würde mich gerade sehr interessieren.
Zitat:
New Dawn 2010 - 2017
Gone but never forgotten. Thanks for all the support over the years, it has been fun. Good luck to you all in your future endeavors..
Server wurde geschlossen^^