Schön gemacht 8/10
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
-
-
Man darf nicht:
- Die Credits in der main() entfernenalso der GM ist nach meiner meinung nicht schlecht... aber was passiert wenn jmd die Credits entfernt (ich downloade denn sowieso nicht..)
-
-
Alleine wenn man die Speicheurng ansieht oder die enum, aber das perfekte Beispiel :
SendClientMessage(playerid,cRed,"Benutze /givelicense [] [playerid/name]");
SendClientMessage(playerid,cGrey,"[driving / 2] [bike / 3] [flying / 4] [weapons / 5]");Linie : 10698
LG
-
Und das in einem DCMD-Command.
Godfather hat kein DCMD.
Und speichern?
So mache ich das seit Monaten, hab ich mal ausm Tut und immer wieder abgeändert -
So nun schauen wir uns z.b. die Tut Publics an, ab Linie 10353, kommt mit sehr bekannt vor.
Dann noch :forward OnPlayerLogin(playerid,string[]);
Gibts nur im GF.
Die Enum :
enum PlayerInfoEnum
{
pRegistered,
pLogged,
pLevel,
pKills,
pDeaths,
pCash,
pBank,
pWanted,
pTeam,
pRank,
pAdmin,
pLeader,
pKey[128],
pSkin,
pTut,
pClub[ClubEnum],
pNumber,
pInt[10],
pIntInfo[10],
pAlter,
pBizKey,
pHouseKey,
pSkillMech,
pSkillTaxi,
pSkillDD,
pSkillWD,
pSkillAnwalt,
pJail,
pJailTime,
pAccount,
pfBike,
pfCar,
pfFly,
pfGun,
pSpawn,
pBan[BanEnum],
pFunk,
pJob,
pFight,
pContract,
pRP,
};Komisch genau die selbe Reihenfolge wie im GF und die Variablen - Niemals geklaut - neee ...
LG
-
PlayerInfo ist nun wirklich Standard. Und wie gesagt, Variablen sind Englisch bis auf ein paar ausnahmen, die PlayerInfoEnum stammt aus meinem alten Blueberry Roleplay Gamemode , daher hab ich das, aber never GF. Und OnPlayerLogin bedeutet übersetzt soetwas wie WennEinSpielerSichEinloggt, das ergiebt sich einfach aus dem zusammenhang.
-
Hab folgende errors
C:\Users\BardSimpson\Desktop\pawno\include\dutils.inc(379) : error 025: function heading differs from prototype
C:\Users\BardSimpson\Desktop\pawno\include\dutils.inc(380) : error 021: symbol already defined: "strtok"
C:\Users\BardSimpson\Desktop\pawno\include\dutils.inc(395) : error 047: array sizes do not match, or destination array is too small
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase3 Errors.
-
So nun schauen wir uns z.b. die Tut Publics an, ab Linie 10353, kommt mit sehr bekannt vor.
Dann noch :forward OnPlayerLogin(playerid,string[]);
Heißt in meinem GM (kein GF) genauso na und...
Der Gamemode hier ist kein GF, erkennt man wenn man sich den mal ganz durchliest.
-
Hab folgende errors
C:\Users\BardSimpson\Desktop\pawno\include\dutils.inc(379) : error 025: function heading differs from prototype
C:\Users\BardSimpson\Desktop\pawno\include\dutils.inc(380) : error 021: symbol already defined: "strtok"
C:\Users\BardSimpson\Desktop\pawno\include\dutils.inc(395) : error 047: array sizes do not match, or destination array is too small
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase3 Errors.
Bei diesem Error: strtok kann ich dir nur helfen:
Entferne das ganze:
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}In der Gamemode und schon ein Error weniger
-
@Nö hab einen houses Ordner angelegt da sind auch die 8 Häuser drin aber so bald ich eins kauf hängt sich alles auf ?
http://img121.imageshack.us/i/samp000hw.png/
-
Heißt in meinem GM (kein GF) genauso na und...
Der Gamemode hier ist kein GF, erkennt man wenn man sich den mal ganz durchliest.
Ich hab nicht gesagt das es ein Gf ist, er hat sich nur die Hälfte ausm GF gerippt.
-
Kleiner Bob,
laber keinen scheiß,
da steckt harte arbeit drin, und wenn du neidisch bist weil DU sowas nicht kannst, verzieh dich, und lass deinen frust nicht an mir bzw. meiner Arbeit raus.Wie mich das ankotzt!
-
Das war eindeutig eine Beleidigung.
Harte Arbeit im Sinne von Copy+Paste, ich kann scripten nur habe ich es nicht nötig zu stealen im gegensatz zu dir - und welcher Frust ?
Du kannst nichtmal etwas dagegen sagen außer "Bob"
Ich kann es nunmal nicht leiden wenn man sich mit fremden Federn schmückt - ganz einfach.LG
Ps. Trooper - du bist gefordert 1x einen Warn an Kleineropa für den falschen Umgangston.
-
Scheiß drauf, ich kann leute wie dich einfach nicht ab.
Und such doch mal nach dem hier im GF:
dcmd_arrest(playerid,params[])
{
if(PlayerInfo[playerid][pTeam]!=tCop)
{
SendClientMessage(playerid,cRed,"Du bist kein Cop");
return 1;
}
if(!IsPlayerInRangeOfPoint(playerid,1.5,219.8087,114.1821,999.0156))
{
SendClientMessage(playerid,cRed,"Du bist nicht an den Zellen");
return 1;
}
new time,haue;
if(sscanf(params,"dd",time,haue))
{
SendClientMessage(playerid,cRed,"Benutze /arrest [minuten] [strafe]");
return 1;
}
new playerto=GetNearestPlayer(playerid,1.5);
if(playerto==pInv)
{
SendClientMessage(playerid,cRed,"Keiner in der Nähe");
return 1;
}
new playertoname[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
new playertosend[128];
GetPlayerName(playerto,playertoname,sizeof playertoname);
GetPlayerName(playerid,playername,sizeof playername);
format(playertosend,sizeof playertosend,"Officer %s hat den Verdächtigen %s eingesperrt",playername,playertoname);
SendClientMessageToAll(cAc,playertosend);
new sec=time*60;
PlayerInfo[playerto][pJail]=1;
PlayerInfo[playerto][pJailTime]=sec;
PlayerInfo[playerto][pWanted]=0;
format(playertosend,sizeof playertosend,"| Strafe: %d$, Zeit: %d Minuten |",haue,time);
SendClientMessage(playerto,cYellow,playertosend);
SendClientMessage(playerid,cBlue,playertosend);
GameTextForPlayer(playerto,"~r~Willkommen im Knast",1200,1);
acGivePlayerMoney(playerto,-haue);
acGivePlayerMoney(playerid,haue);
SpawnPlayer(playerto);
return 1;
}dcmd_heal(playerid,params[])
{
if(PlayerInfo[playerid][pTeam]!=tMedic)
{
SendClientMessage(playerid,cRed,"Du bist kein Medic");
return 1;
}
new playerto;
if(sscanf(params,"u",playerto))
{
SendClientMessage(playerid,cRed,"Benutze /heal [playerid]");
return 1;
}
if(playerto==playerid)
{
SendClientMessage(playerid,cRed,"Du kannst dich nicht selber heilen");
return 1;
}
if(GetDistanceBetweenPlayers(playerid,playerto)>4.0)
{
SendClientMessage(playerid,cRed,"Zu weit weg");
return 1;
}
new playertoname[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
new playertosend[128];
GetPlayerName(playerto,playertoname,sizeof playertoname);
GetPlayerName(playerid,playername,sizeof playername);
format(playertosend,sizeof playertosend,"* %s hat %s geheilt",playername,playertoname);
SendClientMessageToAllNear(playerid,20.0,cMe,playertosend);
SetPlayerHealth(playerto,130.0);
return 1;
}dcmd_ad(playerid,params[])
{
if(BizInfo[bizAd][bizProds]<1)
{
SendClientMessage(playerid,cRed,"Das /ad Biz hat keine Prods mehr");
return 1;
}
if(acGetPlayerMoney(playerid)<150)
{
new serr[128];
format(serr,sizeof serr,"Du hast keine %d $",BizInfo[bizAd][bizEnterPr]);
SendClientMessage(playerid,cRed,serr);
return 1;
}
new playerto[128];
if(sscanf(params,"s",playerto))
{
SendClientMessage(playerid,cRed,"Benutze /ad [text]");
return 1;
}
new playername[MAX_PLAYER_NAME];
new playertosend[128];
GetPlayerName(playerid,playername,sizeof playername);
format(playertosend,sizeof playertosend,"Werbung: %s [%s, Tel: %d]",playerto,playername,PlayerInfo[playerid][pNumber]);
SendClientMessageToAll(cGreen,playertosend);
acGivePlayerMoney(playerid,-BizInfo[bizAd][bizEnterPr]);
GiveBizMoney(bizAd,BizInfo[bizAd][bizEnterPr]);
BizInfo[bizAd][bizProds]=BizInfo[bizAd][bizProds]-1;
return 1;
}
//und
public TimeUpdate()
{
new Hour, Min, Sec;
new TimeString[128];
gettime(Hour, Min, Sec);
if(Min <= 9)
{
format(TimeString,25,"%d:0%d",Hour, Min);
}
else
{
format(TimeString,25,"%d:%d",Hour, Min);
}
if(Sec==0&&Min==0)
{
payday();
SetWorldTime(Hour);
}
if((Sec==0)&&((Min==15)||(Min==30)||(Min==45)||(Min==0)))
{
new xWeather=random(20);
SetWeather(xWeather);
Weather=xWeather;
}
if((Sec==0)&&(Min==0))
{
new Year,Month,Day;
new DateString[128];
getdate(Year,Month,Day);
format(DateString,sizeof DateString,"%d.%d.09",Day,Month);
TextDrawSetString(JClock,DateString);
}
TextDrawShowForAll(HClock);
TextDrawShowForAll(IClock);
TextDrawShowForAll(JClock);
for(new i = 0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
/*if((!IsPlayerNPC(i))&&(GetPlayerMoney(i)>PlayerInfo[i][pCash])&&(GetPlayerMoney(i)-PlayerInfo[i][pCash]>986)&&(ConsumingMoney[i]==0))
{
new gacstr[128];
new gacname[MAX_PLAYER_NAME];
GetPlayerName(i,gacname,sizeof gacname);
format(gacstr,sizeof gacstr,"[SRP Anticheat] %s wurde gekickt [Moneyhack,%d$]",gacname,GetPlayerMoney(i)-PlayerInfo[i][pCash]);
printf(gacstr);
SendClientMessageToAll(cAc,gacstr);
acSetPlayerMoney(i,PlayerInfo[i][pCash]);
Kick(i);
}*/
acSetPlayerMoney(i,PlayerInfo[i][pCash]);
if((!IsPlayerNPC(i))&&PlayerInfo[i][pJail]>0)
{
PlayerInfo[i][pJailTime]=PlayerInfo[i][pJailTime]-1;
if(PlayerInfo[i][pJailTime]<1)
{
acSetPlayerPos(i,-43.5253,1186.2189,24.0859);
SetPlayerFacingAngle(i,257.2380);
SetCameraBehindPlayer(i);
GameTextForPlayer(i,"~g~Freiheit",1200,1);
SendClientMessage(i,cYellow,"Du bist nun wieder frei. Wir hoffen, dass du nicht so bald zurückkommst");
PlayerInfo[i][pJail]=0;
PlayerInfo[i][pJailTime]=0;
}
}
new Float:xg,Float:yg,Float:zg;
new Float:distance,value;
GetPlayerPos(i, xg, yg, zg);
distance = floatsqroot(floatpower(floatabs(floatsub(xg,SavedPOSx[i])),2)+floatpower(floatabs(floatsub(yg,SavedPOSy[i])),2)+floatpower(floatabs(floatsub(zg,SavedPOSz[i])),2));
value = floatround(distance * 11000);
SavedPOSx[i] = xg;
SavedPOSy[i] = yg;
SavedPOSz[i] = zg;
new speed=floatround(value/3200);
if((!IsPlayerNPC(i))&&speed>52&&(!IsPlayerInAnyVehicle(i))&&NoSpeedW[i]==0)
{
new adminm[128];
new pname[MAX_PLAYER_NAME];
GetPlayerName(i,pname,sizeof pname);
format(adminm,sizeof adminm,"=>Speedwarnung! %s: %d Km/h zu Fuß",pname,speed);
Admin(pInv,adminm);
}
if((!IsPlayerNPC(i))&&speed>255&&NoSpeedW[i]==0)
{
new adminm[128];
new pname[MAX_PLAYER_NAME];
GetPlayerName(i,pname,sizeof pname);
format(adminm,sizeof adminm,"=>Speedwarnung! %s: %d Km/h",pname,speed);
Admin(pInv,adminm);
}
if(speed==0)
{
playeridle[i]++;
if(playeridle[i]==1200)
{
new adminm[128];
new pname[MAX_PLAYER_NAME];
GetPlayerName(i,pname,sizeof pname);
format(adminm,sizeof adminm,"[SRP Anticheat] %s wurde gekickt [AfK]",pname,speed);
SendClientMessageToAll(cAc,adminm);
}
}
else playeridle[i]=0;
if((!IsPlayerNPC(i))&&IsPlayerInAnyVehicle(i))
{
new kmhstr[50];
format(kmhstr,sizeof kmhstr,"%d KM/H %d Liter",speed,Tank[GetPlayerVehicleID(i)]);
TextDrawSetString(MSpeed[i],kmhstr);
TextDrawShowForPlayer(i,MSpeed[i]);
}
if((!IsPlayerNPC(i))&&!IsPlayerInAnyVehicle(i))TextDrawHideForPlayer(i,MSpeed[i]);
if(NoSpeedW[i]==1)NoSpeedW[i]=0;
if(NoSpeedW[i]==2)NoSpeedW[i]=1;
if(ConsumingMoney[i]==1)ConsumingMoney[i]=0;
//Propc
if(GetPlayerPC(i)!=pInv&&Playerpc[i]==pInv)
{
TextDrawShowForPlayer(i,TEXT_PROPC);
}
else
{
TextDrawHideForPlayer(i,TEXT_PROPC);
}
ObjectCheck(i);
if(GetPlayerGunshop(i)!=0)
{
if(GetPlayerGunshop(i)==1)
{
Hideguntexts(i);
TextDrawShowForPlayer(i,TEXT_GUN_EAGLE);
}
if(GetPlayerGunshop(i)==2)
{
Hideguntexts(i);
TextDrawShowForPlayer(i,TEXT_GUN_9MM);
}
if(GetPlayerGunshop(i)==3)
{
Hideguntexts(i);
TextDrawShowForPlayer(i,TEXT_GUN_SHOTGUN);
}
if(GetPlayerGunshop(i)==4)
{
Hideguntexts(i);
TextDrawShowForPlayer(i,TEXT_GUN_MP5);
}
if(GetPlayerGunshop(i)==5)
{
Hideguntexts(i);
TextDrawShowForPlayer(i,TEXT_GUN_M4);
}
if(GetPlayerGunshop(i)==6)
{
Hideguntexts(i);
TextDrawShowForPlayer(i,TEXT_GUN_SNIPER);
}
if(GetPlayerGunshop(i)==7)
{
Hideguntexts(i);
TextDrawShowForPlayer(i,TEXT_GUN_ARMOR);
}
if(GetPlayerGunshop(i)==8)
{
Hideguntexts(i);
TextDrawShowForPlayer(i,TEXT_GUN_NITE);
}
}
else
{
Hideguntexts(i);
}
}
}
TextDrawSetString(HClock,TimeString);
return 1;
}
Waren jetzt einfach mal 2 zufällige stellen... -
Nagut fangen wir mal an ...
Bank system :
Deine CMD's :
GF :
Noch mehr ?
Der "Bob" kann auch noch mehr auspacken .. -
Die sind nicht vom GF, sondern aus einem alten TUT...ich geh mal suchen^^
-
cool respekt ;D
-
Wie gesagt, am Anfang dieses GMs habe ich Scripten gelernt, da musste ich das erstmal verstehen.
-
jetzt aufeinmal ...
Und über meinen GM kannst du ja auch nur lachen weil dort zufällig nichts aus dem GF kopiert wurde
Und achja noch etwas der Basic GM dient auch zum lernen nicht um von heute auf morgen ein Server aufzumachen.
Naja von mir gibts auf den GM 4/10 da du ja ziemlich viel von dem Gf zeugs in GUI umgeschrieben hast .. -