[Hades]
-
Příspěvků
35 -
Registrován
-
Aktivní
Content Type
Profiles
Forums
Calendar
Gallery
SA-MP
Příspěvky posted by [Hades]
-
-
útoky probíhají namátkově příde noví hráč sedne do auta a zacne bugovat nějak hru sekat ho to začne teleportovat jak sobeit ale anticheat nehlasi warp hack jak u sobeitu
a ip sou takové
Karl_CZ 24.21.220.121
Kacka 5.19.3.35
edge 184.22.232.62
Eliska 109.126.232.37
gregor 190.72.72.166
MensiFix12355 91.200.138.151
Creppy 109.183.128.210
Bike 176.51.170.63
Gandalf 185.178.50.116
Goliasch 160.179.35.250
Miliardar 93.142.149.171
CrazySmile 185.178.50.103
Fifo007 78.1.16.255 -
útoky jsou na serveru přímé ani anticheat nehlásí nic jako sobeit jen sednou do auta a začne to bugovat server ve specu to buguje i cheatera
-
jde o neustálé útoky hackeru na server přes cizinecké IP tak zda to tak bude fungovat zůstává otázkou
-
právě nemám ale pokusím se to řešit z podporou serveru protože je to docela aktivní hosting tak by to mohly poskytnout ale asi nějaký kod na omezeni IP kromě CZ/SK :/ nebo nějak nakopnout jak na to už sem pokoumal dost věcí ale vše na pytel tak nějak postrčit
-
vůbec nevím kde mám začít
-
celkem hledám něco takového co by neumožnilo příchod na server pokud by ta IP nebyla CZ/SK
-
já tě naučím základ možná ti to pomůže odrazí tě to nějak
nevím v čím pracuješ tak uděláme třeba dini
tak někam kde mas info si uděláme nějakou podmínku já budu psát jak kdybych to psal sobě pro blbce
enum Info
{Autoskola,
Motoskola,
Body,
}někam kde máš načítání ale stačí to takto
public OnPlayerConnect(playerid)
{PlayerInfo[playerid][Body] = dini_Int(file, "Body");//načteme nějaké ty body
return 1;
}někam do Ukládání když se odpojí aby mu to uložilo
public OnPlayerDisconnect(playerid, reason)
{dini_IntSet(file, "Body",PlayerInfo[playerid][Body]);
return 1;
}pokud už máš nějaká to /info tak by stačilo tam dat toto
format(MAX_STR, sizeof(MAX_STR), "%s Počet Bodů: %d\n", MAX_STR,PlayerInfo[playerid][Body]);
Ted už by jsi měl mít body do budoucna a můžeš si dělat co chceš už zaleží jen na podmínce jakou si uděláš pokud by si to chtěl jako jen odměnu tak nějakej příkaz pro admina
CMD:body(playerid, params[])
{
if(PlayerInfo[playerid][AdminLevel] > 0)//tady si dej svoje podminky
{
new Pocet,duvod[40];
new id = strval(params);
if(strlen(params) > 40) return SCM(playerid,0xFF0000AA,"1 - 40 znaků");
if(Pocet < 1)
if(sscanf(params,"uiz",id,Pocet,duvod)) return SCM(playerid,0xFF0000AA,"Nápověda: /gbody (ID) (ČÁSTKA) (DŮVOD)");
else if(!IsPlayerConnected(id)) return SCM(playerid,0xFF0000AA,"Zadané ID není připojeno na serveru!");
else if(IsPlayerNPC(id)) return SCM(playerid,0xFF0000AA,"Zadané ID má NPC!");
else if(playerid == id && PlayerInfo[playerid][AdminLevel] < 6) return SCM(playerid,0xFF0000AA,"Nemůžeš poslat body sám sobě!");
else if(strlen(duvod) < 3) return SCM(playerid,0xFF0000AA,"Nezadal jste důvod!");PlayerInfo[id][body] += Pocet;
SCMTAF(128,0xFF0000AA,"*(A)* Administrátor %s poslal hráči %s %s bodů z důvodu: %s",PlayerName(playerid),PlayerName(id),Number(Pocet),duvod);
}else SCM(playerid,0xFFFFFFAA,"SERVER: Příkaz neexistuje -> /help nebo /prikazy");
return 1;
}a to je asi vše možná ti bude jen chybět dini.inc a zcmd.inc
kod neni testovaný tak doufám že ti to nějak pomohlo pokud ne možná se sem zas podívám napis nebo tak neznám DreamGaming tak nevím co přesně chceš
-
Zdravím mám menší otázečku nevíte jak oddělit CZ/SK IP adresy od cizích adres předem díky za radu.
-
diky je to jen do
public OnGameModeInit ( ) { DisableInteriorEnterExits ( ) ; návrat 1 ; }
ale dik kdyby neco napisu zatim lock
-
Zdárek chtěl bych se jen zeptat jak odstranit původní obchody z pawna jako jsou burgery pizzerie díky předem
-
Ahoj Benny pokud hledáš todle na co ztrácíš čas na serveru https://www.facebook.com/HoleinSanAndreas/ kde si adminem a píšeš upravit ??? jak upravit vsak umíš jen map editor zamysli se co vlastně chceš at ví náš AT team děkuji by Hades
149.202.115.144:7778
Tu fotku sem asi přehnal trošku
- 1
-
Popis problému:
ahoj delam si firmy a potrebuji poradit vse slape jak ma ale problem je v Create3DTextLabel kdyz koupim dum neukaze se majitel ale stale je tam mesto uz me to stve celej den predem diky za rady
Chyby/varování kompilátoru a při běhu:
--
Kód:
#include //-----[ Define ]-----| #define MAX_PROPERTY 100 #define MAX_PROPERTY_NAME 50 //--------------------| //-----[ Enum & New ]-----| enum PROPERTY_INFO { Ne_Cena, Float:Ne_X, Float:Ne_Y, Float:Ne_Z, Ne_Majitel[MAX_PROPERTY_NAME], Ne_Dialog, Ne_Majitela, Ne_iDialog, PlatNemovitost, Ne_Pickup }; new NemovitostInfo[MAX_PROPERTY][PROPERTY_INFO]; new CountProperty = 0; new MajitelN[MAX_PROPERTY][MAX_PLAYERS]; //------------------------| //-----[ Forward ]-----| forward VyplataNemovitosti(playerid); forward MultiiTimer(playerid); forward GetPlayerDistanceToPointEx(playerid,Float:x,Float:y,Float:z); forward IsPlayerInSphere(playerid,Float:x,Float:y,Float:z,radius); forward AddStaticProperty(const Pr_Name[], Float:Pr_X, Float:Pr_Y, Float:Pr_Z, Pr_Cena, Pr_Dialog, Pr_iDialog); //---------------------| //______________________________________________________________________________ public AddStaticProperty(const Pr_Name[], Float:Pr_X, Float:Pr_Y, Float:Pr_Z, Pr_Cena, Pr_Dialog, Pr_iDialog) { if(CountProperty < MAX_PROPERTY) { format(NemovitostInfo[CountProperty][Ne_Majitel], MAX_PROPERTY_NAME, "%s", Pr_Name); NemovitostInfo[CountProperty][Ne_Cena] = Pr_Cena; NemovitostInfo[CountProperty][Ne_X] = Pr_X; NemovitostInfo[CountProperty][Ne_Y] = Pr_Y; NemovitostInfo[CountProperty][Ne_Z] = Pr_Z; NemovitostInfo[CountProperty][Ne_Dialog] = Pr_Dialog; NemovitostInfo[CountProperty][Ne_iDialog] = Pr_iDialog; NemovitostInfo[CountProperty][Ne_Majitela] = 0; NemovitostInfo[CountProperty][PlatNemovitost] = 0; NemovitostInfo[CountProperty][Ne_Pickup] = CreatePickup(1273,1,Pr_X,Pr_Y,Pr_Z); CountProperty ++; } else { printf("Je vysoký počet nemovitostí, je jich %d, a MAXimalne je %d !", CountProperty, MAX_PROPERTY); } } //============================================================================== public IsPlayerInSphere(playerid,Float:x,Float:y,Float:z,radius) { if(GetPlayerDistanceToPointEx(playerid,x,y,z) < radius) return 1; return 0; } //============================================================================== public GetPlayerDistanceToPointEx(playerid,Float:x,Float:y,Float:z) { new Float:x1,Float:y1,Float:z12,Float:tmpdis; GetPlayerPos(playerid,x1,y1,z12); tmpdis = floatsqroot(floatpower(floatabs(floatsub(x,x1)),2) +floatpower(floatabs(floatsub(y,y1)),2)+floatpower(floatabs(floatsub(z,z12)),2)); return floatround(tmpdis); } //============================================================================== public MultiiTimer(playerid) { for(new p = 0; p< CountProperty; p++) { if(IsPlayerInSphere(playerid, NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z], 2) == 1) { SendClientMessage(playerid, 0xFF0000FF, "L.ALT k zobrazeni menu nemovitosti."); } } } //============================================================================== public VyplataNemovitosti(playerid) { SendClientMessage(playerid, 0xFF0000FF, "[ $ ]: Nemovitosti byli vyplaceny !"); for(new p = 0; p < CountProperty; p ++) { if(MajitelN[p][playerid] == 1) { NemovitostInfo[p][PlatNemovitost] += NemovitostInfo[p][Ne_Cena]; } } } //============================================================================== public OnFilterScriptInit() { SetTimer("MultiiTimer", 100, 1); SetTimer("VyplataNemovitosti", 60000*5, 1); //----------| AddStaticProperty("Firma", 2164.0728,1410.5341,10.8203, 3, 650, 651); //----------| for(new p = 0; p< CountProperty; p++) { new stringEX[100]; new pstring[100]; new buyyng[150]; format(pstring,sizeof(pstring),"Majitel:%s \nCena: %d",NemovitostInfo[p][Ne_Majitela] = 0,NemovitostInfo[p][Ne_Cena]); Create3DTextLabel(pstring, 0x0000BBAA,NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z], 40.0, 0, 0); format(buyyng, 150,"Majitel:%s \nCena: %d$",NemovitostInfo[p][Ne_Majitela] = 0, NemovitostInfo[p][Ne_Cena]); Create3DTextLabel(buyyng,0x00FF00FF,NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z] + 1,80.0,0); } //----------| return 1; } //============================================================================== public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(newkeys == KEY_WALK) { for(new p=0; p< CountProperty; p++) { if(IsPlayerInSphere(playerid, NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z], 2) == 1) { ShowPlayerDialog(playerid, NemovitostInfo[p][Ne_Dialog] , DIALOG_STYLE_LIST, "Nemovitost", "Koupit\nInvestovat\nProdat\nInformace\nVybrat plat z nemovitosti", "Potvrdit", "Nic"); } } } return 1; } //============================================================================== public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { for(new p = 0; p< CountProperty; p++) { if(dialogid == NemovitostInfo[p][Ne_Dialog]) { if(response == 1) { if(listitem == 0) { if(GetPlayerMoney(playerid) < NemovitostInfo[p][Ne_Cena]) return SendClientMessage(playerid, 0xFF0000FF, "Nemas dostatek penez !"); if(NemovitostInfo[p][Ne_Majitela] == 1) return SendClientMessage(playerid, 0xFF0000FF, "Tuto nemovitost už někdo vlastní !"); MajitelN[p][playerid] = 1; NemovitostInfo[p][Ne_Majitela] = 1; GivePlayerMoney(playerid, -NemovitostInfo[p][Ne_Cena]); SendClientMessage(playerid, 0xFF0000FF, "Koupil jsi si nemovitost !"); DestroyPickup(NemovitostInfo[p][Ne_Pickup]); NemovitostInfo[p][Ne_Pickup] = CreatePickup(1272,1,NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z]); } else if(listitem == 1) { if(MajitelN[p][playerid] == 0) return SendClientMessage(playerid, 0xFF0000FF, "Tato nemovitost není tvá !"); ShowPlayerDialog(playerid,NemovitostInfo[p][Ne_iDialog],DIALOG_STYLE_INPUT,"Investace","Napiš kolik chceš do své nemovitosti investovat:","Investovat","Nic"); } else if(listitem == 2) { if(MajitelN[p][playerid] == 0) return SendClientMessage(playerid, 0xFF0000FF, "Tato nemovitost není tvá !"); MajitelN[p][playerid] = 0; NemovitostInfo[p][Ne_Majitela] = 0; SendClientMessage(playerid, 0xFF0000FF, "Peníze z nemovitosti ti byli vráceny !"); GivePlayerMoney(playerid, NemovitostInfo[p][Ne_Cena]); DestroyPickup(NemovitostInfo[p][Ne_Pickup]); NemovitostInfo[p][Ne_Pickup] = CreatePickup(1273,1,NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z]); } else if(listitem == 3) { SendClientMessage(playerid, 0xFF0000FF, " [ Property ]"); //---------| new string[150]; format(string, 150, "Jméno Nemovitosti: %s", NemovitostInfo[p][Ne_Majitel]); SendClientMessage(playerid, 0xFFFFFFFF, string); new cena[150]; format(cena, 150, "Cena nemovitosti: %d$", NemovitostInfo[p][Ne_Cena]); SendClientMessage(playerid, 0xFFFFFFFF, cena); if(NemovitostInfo[p][Ne_Majitela] == 0) SendClientMessage(playerid, 0xFFFFFFFF, "Nemovitost: K pronájmu"); else if(NemovitostInfo[p][Ne_Majitela] == 1) SendClientMessage(playerid, 0xFFFFFFFF, "Nemovitost: Odkoupena"); //---------| SendClientMessage(playerid, 0xFF0000FF, "_______________________________________"); } else if(listitem == 4) { if(MajitelN[p][playerid] == 0) return SendClientMessage(playerid, 0xFF0000FF, "Tato nemovitost není tvá !"); if(NemovitostInfo[p][PlatNemovitost] < 1) return SendClientMessage(playerid, 0xFF0000FF, "Tato nemovitost nema v sobě ani dolar !"); GivePlayerMoney(playerid, NemovitostInfo[p][PlatNemovitost]); NemovitostInfo[p][PlatNemovitost] = 0; SendClientMessage(playerid, 0xFF0000FF, "Dostal jsi peníze !"); } } } if(dialogid == NemovitostInfo[p][Ne_iDialog]) { if(response == 1) { new string[150]; if(!strlen(inputtext)) return ShowPlayerDialog(playerid,NemovitostInfo[p][Ne_iDialog],DIALOG_STYLE_INPUT,"Investace","Musíš napsat částku !:","Investovat","Nic"); NemovitostInfo[CountProperty][Ne_Cena] += strval(inputtext); format(string, 150, "Zvíšil jsi cenu nemovitosti na %d$ !", NemovitostInfo[CountProperty][Ne_Cena]); SendClientMessage(playerid, 0xFF0000FF, string); } } } return 1; } //==============================================================================
Dodatečné poznámky:
--
-
jj je to jeho duel a ano ukoncuje ale pokud se nikdo nepripoji musel by si opustit strechu ale pokud zmenis misto duelu na klec tak sni jen tak nevilezes
-
mela by to byt funkce ze pokud opusti zonu tak to napise ze hrac odesel z duelu a vyhodí ho to z duelu na pozici kde byl a nacte puvodni zbrane a ume by to asi ani tam nemuselo byt protoze duel ma byt v kleci co sem vytvoril a ve finále mě ani nedošlo že tu klec neopustí takže když se nikdo nepripoji bude to chtit prikaz /duelend hrac %s se odpojil z duelu a pokud by si byl tak ochoten a nevedl me spravnou cestou jak na to
Takto by to bylo kdybych od dělal zonu ale neopustim duel dobrovolne pokud by se nepripojil souper
#include
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#define BARVA_MODRA 0x33CCFFAA
#define BARVA_BILA 0xEFEFF7AA
#define MAX_PLAYERS_EX 200
forward duelTimerStart();
forward duelTimerUpdate();
enum DUEL_INFO
{
Started,
Counter,
Pocethracu,
TimerStart,
TimerUpdate
}
new Duel[DUEL_INFO];
new IsPlayerInDuel[MAX_PLAYERS_EX];
new DuelZbran[MAX_PLAYERS_EX];
stock WeaponName(weapon)
{
new Nazev[50];
if (weapon == 0) Nazev = "Nic";
else if(weapon == 1) Nazev = "Boxer";
else if(weapon == 2) Nazev = "Golfova hul";
else if(weapon == 3) Nazev = "Hul";
else if(weapon == 4) Nazev = "Nuz";
else if(weapon == 5) Nazev = "Baseballka";
else if(weapon == 6) Nazev = "Lopata";
else if(weapon == 7) Nazev = "Kulecnikova hul";
else if(weapon == 8) Nazev = "Katana";
else if(weapon == 9) Nazev = "Motorovka";
else if(weapon == 10) Nazev = "Dildo";
else if(weapon == 11) Nazev = "Dildo2";
else if(weapon == 12) Nazev = "Vibrator";
else if(weapon == 13) Nazev = "Vibrator2";
else if(weapon == 14) Nazev = "Kvetiny";
else if(weapon == 15) Nazev = "Cane";
else if(weapon == 16) Nazev = "Granat";
else if(weapon == 17) Nazev = "Slzny plyn";
else if(weapon == 18) Nazev = "Molotovuv koktejl";
else if(weapon == 22) Nazev = "Kolt45";
else if(weapon == 23) Nazev = "Pistole s tlumicem";
else if(weapon == 24) Nazev = "Desert Eagle";
else if(weapon == 25) Nazev = "Shotgun";
else if(weapon == 26) Nazev = "Sawn-off Shotgun";
else if(weapon == 27) Nazev = "Combat Shotgun";
else if(weapon == 28) Nazev = "Uzi";
else if(weapon == 29) Nazev = "Mp5";
else if(weapon == 30) Nazev = "AK47";
else if(weapon == 31) Nazev = "M4";
else if(weapon == 32) Nazev = "Tec9";
else if(weapon == 33) Nazev = "Rifle";
else if(weapon == 34) Nazev = "Sniperka";
else if(weapon == 35) Nazev = "Raketomet";
else if(weapon == 36) Nazev = "Teplonavadeci Raketomet";
else if(weapon == 37) Nazev = "Plamenomet";
else if(weapon == 38) Nazev = "Minigun";
else if(weapon == 39) Nazev = "Satchel";
else if(weapon == 40) Nazev = "Bomba";
else if(weapon == 41) Nazev = "Spray";
else if(weapon == 42) Nazev = "Hasicak";
else if(weapon == 43) Nazev = "Fotak";
else if(weapon == 44) Nazev = "Noční vidění";
else if(weapon == 45) Nazev = "Infračervená vize";
else if(weapon == 46) Nazev = "Padak";
return Nazev;
}
stock Jmeno(playerid)
{
new p[MAX_PLAYER_NAME];
if(IsPlayerConnected(playerid)) GetPlayerName(playerid,p,MAX_PLAYER_NAME);
return p;
}
IsNumeric(string[]){ for (new i = 0,j = strlen(string); i < j; i++) if(string > '9' || string < '0') return 0; return 1; }
public duelTimerStart()
{
new string[10];
Duel[Counter]--;
if(Duel[Counter] > 0) Duel[TimerStart] = SetTimer("duelTimerStart",1000,0);
for(new i=0; i< MAX_PLAYERS_EX; i++)
{
if(IsPlayerConnected(i))
{
if(IsPlayerInDuel != 0)
{
if(Duel[Counter] > 0)
{
format(string,sizeof(string),"%d",Duel[Counter]);
GameTextForPlayer(i,string,1000,4);
}else{
GameTextForPlayer(i,"~r~START!",2000,4);
GivePlayerWeapon(i,DuelZbran,99999);
}
}
}
}
return 1;
}
public duelTimerUpdate()
{
for(new i=0; i< MAX_PLAYERS_EX; i++)
{
if(IsPlayerConnected(i))
{
if(IsPlayerInDuel != 0)
{
new Float:X,Float:Y,Float:Z;
GetPlayerPos(i,X,Y,Z);
if(Duel[Counter] == 0)
{
if(Duel[Pocethracu] == 1)
{
new string[150];
format(string,sizeof(string),"Vitezem duelu je %s.",Jmeno(i));
SendClientMessageToAll(BARVA_MODRA,string);
KillTimer(Duel[TimerUpdate]);
DuelZbran = 0;
IsPlayerInDuel = 0;
SpawnPlayer(i);
Duel[started] = 0;
Duel[Pocethracu] = 0;
}
}
}else{
DuelZbran = 0;
IsPlayerInDuel = 0;
SpawnPlayer(i);
new string[150];
format(string,sizeof(string),"Hrac %s opustil duel.",Jmeno(i));
SendClientMessageToAll(BARVA_MODRA,string);
Duel[Pocethracu] --;
if(Duel[Pocethracu] == 0)
{
KillTimer(Duel[TimerUpdate]);
Duel[started] = 0;
}
}
}
}
return 1;
}
public OnPlayerCommandText(playerid,cmdtext[])
{
if(IsPlayerConnected(playerid))
{
dcmd(duel,4,cmdtext);
dcmd(dueljoin,8,cmdtext);
dcmd(duelguest,9,cmdtext);
dcmd(duelweaponlist,14,cmdtext);
}
return 0;
}
dcmd_duel(playerid,params[])
{
#pragma unused params
if(IsPlayerConnected(playerid))
{
SendClientMessage(playerid,BARVA_MODRA,"Duel:");
SendClientMessage(playerid,BARVA_MODRA,"/dueljoin");
SendClientMessage(playerid,BARVA_MODRA,"/duelstart");
SendClientMessage(playerid,BARVA_MODRA,"/duelguest");
SendClientMessage(playerid,BARVA_MODRA,"/duelweaponlist");
}
return 1;
}
dcmd_dueljoin(playerid,params[])
{
if(IsPlayerConnected(playerid))
{
new string[150];
new zbranid=strval(params);
if(!params[0]||!IsNumeric(params)) return SendClientMessage(playerid,BARVA_BILA,"[!] Použití: /dueljoin [zbranid]");
else if(Duel[started] != 0) return SendClientMessage(playerid,BARVA_BILA,"[!] Duel jiz probiha,vyckejte!");
else if(IsPlayerInDuel[playerid] != 0) return SendClientMessage(playerid,BARVA_BILA,"[!] Jiz jste v duelu!");
else if(zbranid > 47 || zbranid < 0 || zbranid == 44 || zbranid == 45 || zbranid == 19 || zbranid == 20 || zbranid == 21 || zbranid == 38 || zbranid == 43) return SendClientMessage(playerid,BARVA_BILA,"[!] Spatne zvolena zbran! Mrknete se na /duelweaponlist");
else
{
Duel[Pocethracu] ++ ;
DuelZbran[playerid] = zbranid;
IsPlayerInDuel[playerid] = 1;
ResetPlayerWeapons(playerid);
KillTimer(Duel[TimerUpdate]);
Duel[TimerUpdate] = SetTimer("duelTimerUpdate",1000,1);
Duel[Counter] = 3;
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,0);
SetPlayerInterior(playerid,0);
format(string,sizeof(string),"Hrac %s byl pripojen do duelu se zbrani %s (%d)",Jmeno(playerid),WeaponName(zbranid),zbranid);
SendClientMessageToAll(BARVA_MODRA,string);
if(Duel[Pocethracu] == 1)
{
SetPlayerPos(playerid,536.2170,-1481.2561,717.2756);
}
else if(Duel[Pocethracu] == 2)
{
SetPlayerPos(playerid,556.7703,-1481.2313,717.2756);
Duel[started] = 1;
SendClientMessageToAll(BARVA_MODRA,"Duel zahajen,pripravit...");
Duel[TimerStart] = SetTimer("duelTimerStart",1000,0);
}
}
}
return 1;
}
dcmd_duelweaponlist(playerid,params[])
{
#pragma unused params
if(IsPlayerConnected(playerid))
{
SendClientMessage(playerid,BARVA_MODRA,"Duel Weapons List:");
SendClientMessage(playerid,BARVA_MODRA,"Desert Eagle - 24");
SendClientMessage(playerid,BARVA_MODRA,"Shotgun - 25");
SendClientMessage(playerid,BARVA_MODRA,"Sawn Off Shotgun - 26");
SendClientMessage(playerid,BARVA_MODRA,"Combat Shotgun - 27");
SendClientMessage(playerid,BARVA_MODRA,"Uzi - 28");
SendClientMessage(playerid,BARVA_MODRA,"MP5 - 29");
SendClientMessage(playerid,BARVA_MODRA,"AK47 - 30");
SendClientMessage(playerid,BARVA_MODRA,"M4 - 31");
SendClientMessage(playerid,BARVA_MODRA,"Tec9 -32");
}
return 1;
}
dcmd_duelguest(playerid,params[])
{
#pragma unused params
if(IsPlayerConnected(playerid))
{
new string[150];
SetPlayerInterior(playerid,0);
SetPlayerPos(playerid,539.7651,-1470.2284,716.8849);
ResetPlayerWeapons(playerid);
format(string,sizeof(string),"Hrac %s se prisel podivat na duel.",Jmeno(playerid));
SendClientMessageToAll(BARVA_MODRA,string);
}
return 1;
}vlaste se jen odelal radek ze zonou
if(X >=532.2701 && X <=559.5403 && Y >=-1481.0779 && Y <=-1481.0552){ale jak ted ukoncit duel pomoci prikazu -
Popis problému:
Zdravím mam problem z pozici pro duel ale jde o pozici zony zmenil sem misto konanani duelu
a tim padem se musi zmenit i zona duelu jde o 8 cisel pozic if(X >= && X <= && Y >= && Y <= ).
Tato funkce ma vytvaret zonu duelu ale jak je tam dosadit tak aby to nevihazovalo
Chyby/varování kompilátoru a při běhu:
--
Kód:
[spoiler]Puvodni duel z fora: #include #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 #define BARVA_MODRA 0x33CCFFAA #define BARVA_BILA 0xEFEFF7AA #define MAX_PLAYERS_EX 200 forward duelTimerStart(); forward duelTimerUpdate(); enum DUEL_INFO { Started, Counter, Pocethracu, TimerStart, TimerUpdate } new Duel[DUEL_INFO]; new IsPlayerInDuel[MAX_PLAYERS_EX]; new DuelZbran[MAX_PLAYERS_EX]; stock WeaponName(weapon) { new Nazev[50]; if (weapon == 0) Nazev = "Nic"; else if(weapon == 1) Nazev = "Boxer"; else if(weapon == 2) Nazev = "Golfova hul"; else if(weapon == 3) Nazev = "Hul"; else if(weapon == 4) Nazev = "Nuz"; else if(weapon == 5) Nazev = "Baseballka"; else if(weapon == 6) Nazev = "Lopata"; else if(weapon == 7) Nazev = "Kulecnikova hul"; else if(weapon == 8) Nazev = "Katana"; else if(weapon == 9) Nazev = "Motorovka"; else if(weapon == 10) Nazev = "Dildo"; else if(weapon == 11) Nazev = "Dildo2"; else if(weapon == 12) Nazev = "Vibrator"; else if(weapon == 13) Nazev = "Vibrator2"; else if(weapon == 14) Nazev = "Kvetiny"; else if(weapon == 15) Nazev = "Cane"; else if(weapon == 16) Nazev = "Granat"; else if(weapon == 17) Nazev = "Slzny plyn"; else if(weapon == 18) Nazev = "Molotovuv koktejl"; else if(weapon == 22) Nazev = "Kolt45"; else if(weapon == 23) Nazev = "Pistole s tlumicem"; else if(weapon == 24) Nazev = "Desert Eagle"; else if(weapon == 25) Nazev = "Shotgun"; else if(weapon == 26) Nazev = "Sawn-off Shotgun"; else if(weapon == 27) Nazev = "Combat Shotgun"; else if(weapon == 28) Nazev = "Uzi"; else if(weapon == 29) Nazev = "Mp5"; else if(weapon == 30) Nazev = "AK47"; else if(weapon == 31) Nazev = "M4"; else if(weapon == 32) Nazev = "Tec9"; else if(weapon == 33) Nazev = "Rifle"; else if(weapon == 34) Nazev = "Sniperka"; else if(weapon == 35) Nazev = "Raketomet"; else if(weapon == 36) Nazev = "Teplonavadeci Raketomet"; else if(weapon == 37) Nazev = "Plamenomet"; else if(weapon == 38) Nazev = "Minigun"; else if(weapon == 39) Nazev = "Satchel"; else if(weapon == 40) Nazev = "Bomba"; else if(weapon == 41) Nazev = "Spray"; else if(weapon == 42) Nazev = "Hasicak"; else if(weapon == 43) Nazev = "Fotak"; else if(weapon == 44) Nazev = "Noční vidění"; else if(weapon == 45) Nazev = "Infračervená vize"; else if(weapon == 46) Nazev = "Padak"; return Nazev; } stock Jmeno(playerid) { new p[MAX_PLAYER_NAME]; if(IsPlayerConnected(playerid)) GetPlayerName(playerid,p,MAX_PLAYER_NAME); return p; } IsNumeric(string[]){ for (new i = 0,j = strlen(string); i < j; i++) if(string[i] > '9' || string[i] < '0') return 0; return 1; } public duelTimerStart() { new string[10]; Duel[Counter]--; if(Duel[Counter] > 0) Duel[TimerStart] = SetTimer("duelTimerStart",1000,0); for(new i=0; i< MAX_PLAYERS_EX; i++) { if(IsPlayerConnected(i)) { if(IsPlayerInDuel[i] != 0) { if(Duel[Counter] > 0) { format(string,sizeof(string),"%d",Duel[Counter]); GameTextForPlayer(i,string,1000,4); }else{ GameTextForPlayer(i,"~r~START!",2000,4); GivePlayerWeapon(i,DuelZbran[i],99999); } } } } return 1; } public duelTimerUpdate() { for(new i=0; i< MAX_PLAYERS_EX; i++) { if(IsPlayerConnected(i)) { if(IsPlayerInDuel[i] != 0) { new Float:X,Float:Y,Float:Z; GetPlayerPos(i,X,Y,Z); if(X >= 2445.0791 && X = 2350.9741 && Y 47 || zbranid < 0 || zbranid == 44 || zbranid == 45 || zbranid == 19 || zbranid == 20 || zbranid == 21 || zbranid == 38 || zbranid == 43) return SendClientMessage(playerid,BARVA_BILA,"[!] Spatne zvolena zbran! Mrknete se na /duelweaponlist"); else { Duel[Pocethracu] ++ ; DuelZbran[playerid] = zbranid; IsPlayerInDuel[playerid] = 1; ResetPlayerWeapons(playerid); KillTimer(Duel[TimerUpdate]); Duel[TimerUpdate] = SetTimer("duelTimerUpdate",1000,1); Duel[Counter] = 3; SetPlayerHealth(playerid,100); SetPlayerArmour(playerid,0); SetPlayerInterior(playerid,0); format(string,sizeof(string),"Hrac %s byl pripojen do duelu se zbrani %s (%d)",Jmeno(playerid),WeaponName(zbranid),zbranid); SendClientMessageToAll(BARVA_MODRA,string); if(Duel[Pocethracu] == 1) { SetPlayerPos(playerid,2449.7778,2378.5486,71.0496); } else if(Duel[Pocethracu] == 2) { SetPlayerPos(playerid,2489.5415,2378.6658,71.0496); Duel[Started] = 1; SendClientMessageToAll(BARVA_MODRA,"Duel zahajen,pripravit..."); Duel[TimerStart] = SetTimer("duelTimerStart",1000,0); } } } return 1; } dcmd_duelweaponlist(playerid,params[]) { #pragma unused params if(IsPlayerConnected(playerid)) { SendClientMessage(playerid,BARVA_MODRA,"Duel Weapons List:"); SendClientMessage(playerid,BARVA_MODRA,"Desert Eagle - 24"); SendClientMessage(playerid,BARVA_MODRA,"Shotgun - 25"); SendClientMessage(playerid,BARVA_MODRA,"Sawn Off Shotgun - 26"); SendClientMessage(playerid,BARVA_MODRA,"Combat Shotgun - 27"); SendClientMessage(playerid,BARVA_MODRA,"Uzi - 28"); SendClientMessage(playerid,BARVA_MODRA,"MP5 - 29"); SendClientMessage(playerid,BARVA_MODRA,"AK47 - 30"); SendClientMessage(playerid,BARVA_MODRA,"M4 - 31"); SendClientMessage(playerid,BARVA_MODRA,"Tec9 -32"); } return 1; } dcmd_duelguest(playerid,params[]) { #pragma unused params if(IsPlayerConnected(playerid)) { new string[150]; SetPlayerInterior(playerid,0); SetPlayerPos(playerid,2460.1892,2336.0178,82.7734); ResetPlayerWeapons(playerid); format(string,sizeof(string),"Hrac %s se prisel podivat na duel.",Jmeno(playerid)); SendClientMessageToAll(BARVA_MODRA,string); } return 1; }[/spoiler]
Dodatečné poznámky:
Mě jde vlastne o tyto pozice
if(X >= 2445.0791 && X <= 2497.3074 && Y >= 2350.9741 && Y <= 2402.0007)
a zde sou me souradnice kde by se to melo odehravat (místo je ve vzduchu v kleci)
AddPlayerClass(276,537.8679,-1472.1122,716.8849,218.0587,0,0,0,0,0,0); // arena
AddPlayerClass(276,554.3687,-1488.7344,716.8849,44.4938,0,0,0,0,0,0); // arena
ja to mel takto:
if(X >= 537.8679 && X <= 554.3687 && Y >= -1472.1122 && Y <= -1488.7344)
ale jak sem zjistil tak je to spatne
předem diky za pomoc a vysvětlení
-
dekuji jde o herni penize po nikom bych za hru nechtel real
-
diky moc a ja si tim tady lamu hlavu uz 2 dny a jen carka
Jeste bych mel jeden dotaz jak to udelat aby se sprava zobrazila v pravo dole a pokud by jste nekdo byl tak ochotnej a vysvetlil mi jak ten warp muzu udelat placenej pro hrace
-
Popis problému:
Zdravím potřeboval bych zkušenou radu nějakého pawnera dělám si warpy na server jak odportovani tak i ukládaní pozice pro warp ale neustale mi skáče chyba error to jste asi nečekali .
Chyby/varování kompilátoru a při běhu:
C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : error 020: invalid symbol name ""
C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : warning 215: expression has no effect
C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : warning 215: expression has no effect
C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : warning 215: expression has no effect
C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : error 001: expected token: ";", but found ")"
C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : error 029: invalid expression, assumed zero
C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : fatal error 107: too many error messages on one line
Kód:
new Float:pos[3]; new sprava[80], Meno[MAX_PLAYER_NAME]; if (strcmp("/lv", cmdtext, true, 10) == 0) { if(IsPlayerConnected(playerid)) // pokud je hráč připojen { new car = GetPlayerVehicleID(playerid); // vytvoří proměnu pro hráčovo auto if(!IsPlayerInAnyVehicle(playerid)) // pokud není v žádném autě stane se... { SetPlayerPos(playerid,2024.0475,1250.5278,10.8203); // SetPlayerPos GetPlayerName(playerid,Meno,sizeof(Meno)); [b]format(sprava,sizeof,(sprava),"Hrac se portnul do /lv!",Meno); //chybný řádek [/b] SendClientMessageToAll(-1,sprava); SetPlayerInterior(playerid, 0); // pro jistotu, Nastaví interier na 0. }else{ // nebo, pokud je v autě stane s SetVehiclePos(car,2024.0475,1250.5278,10.8203); // Nastaví-Pozici-Autu [b]format(sprava,sizeof,(sprava),"Hrac se portnul do /lv!",Meno); [/b] // zpráva s autem [font=tahoma, helvetica, arial, sans-serif][size=3][background=#fdfdfd]SendClientMessageToAll(-1,sprava);[/size][/font][/background] SetPlayerInterior(playerid, 0); } } return 1;
Dodatečné poznámky:
Předem diky za pomoc a ještě bych měl jeden dotaz chtěl bych když se od portuju aby se ta informace napsala v pravo dole ale aby zustal klasicky chet v pravo na hore
-
vypada to asi tak to#include <a_samp>#define MAX_PLAYERS_EX 100#include <DOF2.pwn>#define GiveMoney GivePlayerMoney#define dini_Exists DOF2_FileExists#define dini_Remove DOF2_RemoveFile#define dini_Create DOF2_CreateFile#define dini_Set DOF2_SetString#define dini_Get DOF2_GetString#define dini_IntSet DOF2_SetInt#define dini_Int DOF2_GetInt#define dini_BoolSet DOF2_SetBool#define dini_Bool DOF2_GetBool#define dini_FloatSet DOF2_SetFloat#define dini_Float DOF2_GetFloat#define dini_Unset DOF2_Unset#define dini_Isset DOF2_IsSet#define dini_Write DOF2_Exita zde je ten errorC:\Users\lenovo\Downloads\HouseSystem.pwn(21) : fatal error 100: cannot read from file: "DOF2.pwn"Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase1 Error.
-
Zdravím potřeboval bych poradit stáhl jsem si Housesystem od qwera.
.
Jde o to ze když chci převést pwn do amx pomoci F5 naskočí mi chyba erorr řádek (21).
21.#include
22.#define GiveMoney GivePlayerMoney
23.#define dini_Exists DOF2_FileExists
atd.....
Potřeboval bych vědět kde je tam a chyba a nějak opravit.
Jsu začátečník v pawnu tak se v něm nevyznám a hledám radu jak zprovoznit tento housesystem.Díky za každou radu.
-
Popis problému:
Zdravím potřeboval bych poradit stáhl jsem si Housesystem od qwera.(https://www.youtube.com/watch?v=6IDu0mWwqo4).
Jde o to ze když chci převést pwn do amx pomoci F5 naskočí mi chyba erorr řádek (21).
Potřeboval bych vědět kde je tam a chyba a nějak opravit.
Jsu začátečník v pawnu tak se v něm nevyznám a hledám radu jak zprovoznit tento housesystem.
Díky za každou radu.
Chyby/varování kompilátoru a při běhu:
erorr řádek (21)
Kód:#include #define GiveMoney GivePlayerMoney #define dini_Exists DOF2_FileExists
Dodatečné poznámky:
--
Rozpoznání IP
v Herní (SA:MP, CS apod.)
Odesláno: · Edited by Doobyvatel
právě to mě taky jedine napadlo díky za pomoc budu to koumat a bacha na servery utoky jdou ze serveru Club Zone fakt fetaci co neunesou ze tam nikdo nechce hrat tak kazi jine servery jinak jde o lidi sokeres a _[K]ill[3]r_ je pro případ že tyto nicky spatříte at víte