Codeschnipsel
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
-
ja fail scheiß name ich weiß
hab mir ein ein besseren überlegt GetOwnerVehicleID(playerid)
kurze erklährung
bei ein autohaussystem hat man ja manchmal ein problem mit den VID(Vehicle ID´s)
diese function haut den fehler einfach raus und arbeitet praktisch
habs selber in mein autohaussystem drin funzt perfekt
zb. playerid hat jetzt ein auto mit der VID 500 und die schleife geht einfach alle auto´s durch und wo der owner gleich playerid name ist zeigt die VID an
so ist es z.b. bessermöglich mit destroyvehicle zu arbeiten -
Hier wurde zwar schon ewig nichts mehr gepostet, aber:
[pwn]stock IsPlayerBehindVehicle(playerid,veh)
{
new Float:vcoord[3]; GetVehiclePos(veh,vcoord[0],vcoord[1],vcoord[2]);
new Float:vangle; GetVehicleZAngle(veh,vangle);
new Float:vinfo[3]; GetVehicleModelInfo(GetVehicleModel(veh),VEHICLE_MODEL_INFO_SIZE,vinfo[0],vinfo[1],vinfo[2]);
new Float:lenge = floatdiv(vinfo[1],2.0);
new Float:radius = floatdiv(vinfo[0],2.0);
vcoord[0] = floatadd(vcoord[0],(-lenge * floatsin(-vangle,degrees)));
vcoord[1] = floatadd(vcoord[1],(-lenge * floatcos(-vangle,degrees)));
if(IsPlayerInRangeOfPoint(playerid,radius,vcoord[0],vcoord[1],vcoord[2])){return 1;}
else{return 0;}
}[/pwn]
[pwn]stock IsVehicleUsed(vehicleid)
{
for(new playerid; playerid < MAX_PLAYERS; playerid++)
{
if(IsPlayerConnected(playerid) && GetPlayerVehicleID(playerid) == vehicleid)
{
return 1;
}
}
return 0;
}[/pwn]
[pwn]stock GetPlayeridByIP(ip[])
{
new abgleich[32];
for(new playerid; playerid < MAX_PLAYERS; playerid++)
{
if(IsPlayerConnected(playerid))
{
GetPlayerIp(playerid,abgleich,sizeof(abgleich));
if(!strcmp(abgleich,ip,true,32))
{
return playerid;
}
}
}
return -1;
}[/pwn]
Glaube die Benutzung ist bei allen selbsterklärend -
[pwn]
//Oben ins Script
forward Timer();
//Unter OnGameModeInit
SetTimer("Timer",1000,1);
//Dein public
public Timer()
{
for(new i = 0; i < MAX_PLAYERS; i++){
new Float:zustand;
new car = GetPlayerVehicleID(i);
GetVehicleHealth(car, zustand);
if(zustand < 900){ SetVehicleHealth(car, 1000.0); RepairVehicle(car); }
}
[/pwn]
Dieser Code ist für Stuntserver nützlich, welche vorhaben deren Cars nicht explodieren zu lassen.
mfg. =) -
[pwn]stock SetVehicleSpeed(vehicleid, Float:speed)
{
new Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2, Float:a;
GetVehicleVelocity(vehicleid, x1, y1, z1);
GetVehiclePos(vehicleid, x2, y2, z2);
GetVehicleZAngle(vehicleid, a); a = 360 - a;
x1 = (floatsin(a, degrees) * (speed/100) + floatcos(a, degrees) * 0 + x2) - x2;
y1 = (floatcos(a, degrees) * (speed/100) + floatsin(a, degrees) * 0 + y2) - y2;
SetVehicleVelocity(vehicleid, x1, y1, z1);
}[/pwn]
Setzt die Geschwindigkeit eines Fahrzeuges auf einen bestimmten, oben angegebenen Wert.
MFG -
HIer mal ein Code, um Commands zu loggen
[pwn]stock LCommand(event[])
{
new File:log = fopen("command_log.txt", io_append);
fwrite(log, event);
fwrite(log, "\n");
fclose(log);
}
[/pwn]
Zu verwenden:
[pwn]...blablabla
bisidfo(playerid, fdsf+2);
new logstring[128];
new year;
new month;
new day;
getdate(year,month,day);
format(logstring,sizeof(logstring), " [%02d-%02d-%02d] %s hat %s gehautn tuten tun!", day, month, year,...);
LogCommand(logstring);[/pwn] -
Benötigt wird unter OnPlayerDeath
dieser Code friert einen spieler ein wenn er gestorben ist
[pwn]
SendClientMessage(playerid,ROT,"Du Bist Tot");
TogglePlayerControllable(playerid, 0);
ClearAnimations(playerid);
ApplyAnimation(playerid, "PED", "KO_shot_front", 4.1, 0, 1, 1, 0, 300000, 1);
SendClientMessage(playerid,ROT,"Ein arzt ist auf dem weg zu dir");[/pwn]
Dann der ocmd befehl müsste man noch zum medic umschreiben aber er funktioniert
per /heal name/id preis
wird fest gelegt wer wiederbelebt wird und wieviel es kostet
anschließend wird dem Medic der preis gutgeschrieben und dem wiederbelebten abgezogen
[pwn]ocmd:heal(playerid, params[])
{
new
id,
money;
if (sscanf(params, "ui", id, money)) SendClientMessage(playerid, ROT, "Nutze: "/heal <ID/NAME> <PREIS>"");
else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, ROT, "Spieler nicht gefunden!");
else
{
if(IsPlayerAdmin(playerid))
{
SetPlayerHealth(id, 100.0);
SendClientMessage(id, GRUEN, "Der arzt hat dich wiederbelebt");
SendClientMessage(playerid, GRUEN, "Du hast den Verletzten erfolgreich widerbelebt");
GivePlayerMoney(playerid,money);
GivePlayerMoney(id,-money);
}
else
{
SendClientMessage(playerid, ROT, "Du bist kein admin");
}
}
return 1;
}[/pwn]
das kann man jetzt noch erweitern mit getplayer pos setplayerpos so wie timer ansonnsten liegt man da ja bis ein arzt sich kümmert^^Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von west123 ()
-
Der "Schnipsel" ist voller Fehler und unbrauchbar, weil vieles fehlt.[Blockierte Grafik: http://imageshack.us/a/img829/1465/signaturbaby.png]
-
-
Aha, das ist kein Fehler?
[pwn]SendClientMessage(playerid, ROT, "Nutze: "/heal <ID/NAME> <PREIS>"");[/pwn]
Also ich sehe direkt das, dass falsch ist. Und die Funktion braucht noch z.b. einen Marker, denn sonst liegt man da ja die ganze Zeit rum oder nach nem relog ist man wieder am leben. Es soll zwar ein Codeschnipsel sein, aber eher unbrauchbar.[Blockierte Grafik: http://imageshack.us/a/img829/1465/signaturbaby.png]
-
[pwn]SendClientMessage(playerid, ROT, "Nutze: "/heal <ID/NAME> <PREIS>"");[/pwn]
dürfte so gehen.
Rest ist etwas komisch geschrieben... sehr komisch finde ich.
Macht so mehr Sinn:
[pwn]ocmd:heal(playerid, params[]) {
new id,
money;
if(sscanf(params, "ui", id, money))
return SendClientMessage(playerid, ROT, "Nutze: "/heal <ID/NAME> <PREIS>"");
if(id == INVALID_PLAYER_ID)
return SendClientMessage(playerid, ROT, "Spieler nicht gefunden!");
if(!IsPlayerAdmin(playerid))
return SendClientMessage(playerid, ROT, "Du bist kein admin");
SetPlayerHealth(id, 100.0);
SendClientMessage(id, GRUEN, "Der arzt hat dich wiederbelebt");
SendClientMessage(playerid, GRUEN, "Du hast den Verletzten erfolgreich widerbelebt");
GivePlayerMoney(playerid,money);
GivePlayerMoney(id,-money);
return 1;
}[/pwn] -
stimmt geb ich dir recht die admin abfrage fehlt aber dafür ist es ja hier die codeschnipsel sektion
-
[BlaZZeR]BirD schrieb:
Aha, das ist kein Fehler?
[pwn]SendClientMessage(playerid, ROT, "Nutze: "/heal <ID/NAME> <PREIS>"");[/pwn]
Also ich sehe direkt das, dass falsch ist. Und die Funktion braucht noch z.b. einen Marker, denn sonst liegt man da ja die ganze Zeit rum oder nach nem relog ist man wieder am leben. Es soll zwar ein Codeschnipsel sein, aber eher unbrauchbar.
wenn du das mit playerid meinst ja da hab ich was vertauscht da müsste pID hin aber ich hab dem toten pID gegeben somit kein fehler ich habe nie gesagt das es fertig ist siehe Start post hab unten hin geschrieben was man noch machen könnte
aber wenn einem hier alles negativ angerechnet wird wars das dann mit dem forum viel erfolg noch ich bin nicht hier um mich dumm anquatschen zu lassen zudem ich mir keiner schuld bewusst bin bis auf den admin teil!Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von west123 ()
-
Wozu doppelpost?
Und ich habe nie geschrieben von wegen "pID" ich kenne mich selber aus mit dem Scripten bzw habe nur mit OCMD und sscanf gescriptet.[Blockierte Grafik: http://imageshack.us/a/img829/1465/signaturbaby.png]
-
Teilen
- Facebook 0
- Twitter 0
- Google Plus 0
- Reddit 0