dann ist das verscheinlich das was ich oben geschrieben habe 2. post^^ den habe ich auch gemeint..
wie gesagt weiß net ob das ansatzweise klappt.... habe noch nie chat deaktiviert und so..
dann ist das verscheinlich das was ich oben geschrieben habe 2. post^^ den habe ich auch gemeint..
wie gesagt weiß net ob das ansatzweise klappt.... habe noch nie chat deaktiviert und so..
ja keine ahnung was du meinst also wenn ich "t" drücke und dann schreibe, kann es jeder lesen.. ich habe natürlich auch besondere chats wie /w, /a ... die dann nur bestimmte leute sehen...
welche chats sollen wann, wie und warum abgeschaltet werden...
vllt so:
new: textaus;
OnPlayerCmd...()
{
//falls er admin ist::
{
//wenn er den befehl eingiebt
{
testaus = 1;
}
}
return 1;
}
OnPlayerText(..)
{
if(textaus = 1)
{
//das er net schreiben kann..
}
return 1;
}
habs jetzt mal eben so hingeklatscht muss wohl einiges dran verbessert werden..
versuch es mal so:
if (strcmp(cmdtext, "/heilen",true)==0)
{
if(IsPlayerInRangeOfPoint(playerid,-2661.4658,635.9606,14.4531)==0)
{
if(GetPlayerHealth(playerid) <= 100.0)
{
SetPlayerHealth(playerid,100.0);
GivePlayerMoney(playerid,-500);
SendClientMessage(playerid,0x00FF99,"Du wurdest für $500 geheilt!");
}
else
{
SendClientMessage(playerid,0xAA3333AA,"Du besitz schon volles Leben!");
GivePlayerMoney(playerid,0.0);
}
if (strcmp("/onduty", cmdtext, true, 10) == 0)
{
new string[50];
if(SpielerInfo[playerid][alvl]<1)
{
return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin Level 1!");
}
else
{
GetPlayerName(playerid,pname,sizeof(pname)); // hier kommt error
format(string,sizeof(string),"Admin %s ist nun On Duty!",pname);
SendClientMessageToAll(0xD40000FF,string);
godtimer[playerid] = SetTimerEx("godmode", 250, true, "i",playerid);
SendClientMessage(playerid,COLOR_RED,"Gottmodus aktiviert");
}
}
if (strcmp("/offduty", cmdtext, true, 10) == 0)
{
new string[50];
if(SpielerInfo[playerid][alvl]<1)
{
return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin Level 1!");
}
else
{
GetPlayerName(playerid,pname,sizeof(pname));
format(string,sizeof(string),"Admin %s ist wieder Off Duty!",pname);
SendClientMessageToAll(0xD40000FF,string)
KillTimer(godtimer[playerid]);
SendClientMessage(playerid,COLOR_RED,"Gottmodus deaktiviert!");
}
}
C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\admin.pwn(910) : error 017: undefined symbol "pname"
C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\admin.pwn(910) : error 017: undefined symbol "pname"
C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\admin.pwn(910) : error 029: invalid expression, assumed zero
C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\admin.pwn(910) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
öhh müsste aber eigentlich!
bist du sicher das du dich nicht vertippt hast oder ähnliches? oder wird der cmd /save schon für was anderes benutzt?
prüf das nochmal alles, müsste eigentlich klappen..
ahhhhh
gut rausgeredet nein schon gut nur ich meine so braucht er nicht groß suchen und so..
achsoo
naya die weiß ich nicht...
das verstehe ich nicht so ganz.. das alles is unter OnPlayerCommandText.
also er wird abgefragt welche farbe er hat. dann bekommt er ne andere farbe wenn er on duty geht und seine alte bekommt er wieder wenn er wieder offduty geht...
wie bitte? welche ganglogos?
OMG ist mir ja noch nie passiert so ein dummer fehler aber trotzdem:
new fduty;
fduty = GetPlayerColor(playerid);
dcmd_onduty(playerid,params[])
{
#pragma unused params
if(SpielerInfo[playerid][alvl]<1)
{
return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin Level 1!");
}
else
{
godtimer[playerid] = SetTimerEx("godmode", 250, true, "i",playerid);
SendClientMessageToAll(0xD90000FF,"Ein Admin ist nun On Duty!!!");
SendClientMessage(playerid,COLOR_RED,"Gottmodus aktiviert");
SetPlayerColor(playerid,0xD90000FF);
}
return 1;
}
dcmd_offduty(playerid, params[])
{
#pragma unused params
if(SpielerInfo[playerid][alvl]<1)
{
return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin Level 1!");
}
else
{
KillTimer(godtimer[playerid]);
SendClientMessage(playerid,COLOR_RED,"Gottmodus deaktiviert!");
SetPlayerColor(playerid,fduty);
}
return 1;
}
C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\admin.pwn(1690) : error 010: invalid function or declaration
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
verstehe das net ganz.. möchtest du nun das die pickups in allen sichtbar sind oder nur in einem bestimmten? wenn nur in einem bestimmten, dann änderst du halt "-1" in die id der virtuellen welt.. also wenn er in die welt 2 geportet wird, und das pickup nur da sein soll, dann halt atsstatt "-1" "2"..
wenn ein pickup in allen virtuellen welten zu sehen ist lässte es einfach bei -1
das meinte ich.... also es sieht so aus als würde er gefreezed und gleich wieder entfreezed werden...
er wird halt gestoppt... nur er muss wissen ob man ihn einsteigen lassen soll und dann rauswerfen oder bevor er überhaupt dazu kommt einzusteigen daran gehindert wird..
beides ist möglich..
hier:
new fduty
fduty = GetPlayerColor(playerid);
dcmd_onduty(playerid,params[])
{
#pragma unused params
if(SpielerInfo[playerid][alvl]<1)
{
return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin Level 1!");
}
else
{
godtimer[playerid] = SetTimerEx("godmode", 250, true, "i",playerid);
SendClientMessageToAll(0xD90000FF,"Ein Admin ist nun On Duty!!!");
SendClientMessage(playerid,COLOR_RED,"Gottmodus aktiviert");
SetPlayerColor(playerid,0xD90000FF);
}
return 1;
}
dcmd_offduty(playerid, params[])
{
#pragma unused params
if(SpielerInfo[playerid][alvl]<1)
{
return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin Level 1!");
}
else
{
KillTimer(godtimer[playerid]);
SendClientMessage(playerid,COLOR_RED,"Gottmodus deaktiviert!");
SetPlayerColor(playerid,fduty);
}
return 1;
}
und hier:
C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\admin.pwn(1690) : error 001: expected token: ";", but found "-identifier-"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
wäre auch ne möglichkeit...
also dann aber wieder bei OnPlayerEnterVehicle.. also wenn er einsteigt wird er einfach gefreezed...
aber dann fliegt er halt net aus dem auto und es wird einem auch nocht gesagt welchen rank er braucht...
nein eben nicht! OnPlayerENterVehicle fängt an, wenn du f/g drückst. außerdem wirst du dann auch als beifahrer rausgeworfen. das problem: du drügst g/f und steigst ein. in dem moment soll er dich aus dem auto schmeißen. das tut er auch! nur da du noch garnet im auto sitzt sondern er gerade erst einsteigt, merkt keiner was davon..
die lösung: ein ein post über deinen letzten...
ja.. ist kla.. wo runter hast du das gemacht? OnPlayerEnterVehicle?
//hier die lösung:
new auto[1]; //das in den eckigen klammern ist die anzahl der autos... es wird bei 0 angefangen..
OnGameModeInit()
{
auto[0] = AddStaticVehicle(...);// das auto was erst mit dem rank gefahren werden kann..
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(newstate == PLAYER_STATE_DRIVER)
{
for(new j = 0;j<sizeof auto;j++)
{
if(vehicleid ==auto[j])
{
if(Player[playerid][rank] >= 6)
{
}
else
{
SendClientMessage(playerid,ROT,"Du benötigst rank 6 oder höher um das auto fahren zu können!");
RemovePlayerFromVehicle(playerid);
}
}
}
}
return 1;
}
was ist wenn er die autos net auf sein server hat? deswegen will er die ja in script packen... also ganz einfach:
du besitzt mit sicherheit samp und damit auch samp debug.. du gehst nun auf "samp_debug und klickst auf das erste, "Launche Debug"
du kommst nun als zivi in ls und kannst rumlaufen.
nun drückt du "t" und gibst /vsel ein. du kommst in eine autowahl. du kannst mit der leer und alt taste zwischen den autoswechseln. mit enter bestätigen und du hast das auto.
damit kannst du nun hinfahren wo es stehen soll. du stellst es hin und giebst /save [test] ein. wichtig dabei ist, das du im auto sitzt. es ist egal, ob das auto schrott oder heile ist. nun gehste in deinen GTA-Ordner und sucht die datei "saveposition.txt" aus. dort ist dein wagen abgespeichert: AddStaticVehicle(...)//[text].
du kopierst das aus der .txt datei raus und packst das in deinen script unter OnGameModeInit() rein.
fertig.
new health;
OnGameModeInit()
{
health = CreatePickup(1240, 2,-2661.4658,635.9606,14.4531, -1);
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/heilen", true)==0)
{
if(IsPlayerToPoint(playerid,-2661.4658,635.9606,14.4531))
{
if(GetPlayerHealth(playerid) < 100.0)
{
SetPlayerHealth(playerid,100.0);
}
else
{
SendClientMessage(playerid,FARBE,"Du besitz volles Leben!");
}
}
return 1;
}
OnPlayerPickUpPickup(..)
{
if(pickupid == health)
{
GameTextForPlayer(playerid,"~w~/heilen",3000,6); //ein beispiel wie du da smachen könntest wenn du es anders haben willst sag bescheid ^^
}
return 1;
}
ich weiß net ob das klappt, könnten fehler drinne sein, wenn ja bitte posten..