Szerző Téma: SzavazásRendszer v2.0  (Megtekintve 1650 alkalommal)

SzavazásRendszer v2.0
« Dátum: 2016. február 22. - 18:15:02 »
0 Show voters
Sziasztok! Elkészitettem nektek egy szavazó rendszert!
Ha használjátok kérem a nevem: Chris_Wilson, tüntessétek fel.
PWN: http://www.solidfiles.com/d/bfa0aa9cb1/
 
#include <a_samp>
#define Arany HexToInt(\"A88710\")
#define Piros 0xAA3333AA
//Sziasztok! Én Chris_Wilson vagyok, és elhoztam nektek a 2. scriptem.
 
new bool: Szavazott[MAX_PLAYERS];
new bool: VoteKick[MAX_PLAYERS];
new Szavazasok[MAX_PLAYERS];
 
public OnFilterScriptInit()
{
print(\"-----------------------------------------\");
print(\"    Szavazós parancsok by Chris_Wilson         \");
print(\"-----------------------------------------\");
return 1;
}
public OnFilterScriptExit()
{
    print(\"-----------------------------------------\");
print(\"    Szavazós parancsok by Chris_Wilson      \");
print(\"-----------------------------------------\");
return 1;
}
public OnPlayerConnect(playerid)
{
Szavazasok[playerid] = 0;
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new string[256];
new player[MAX_PLAYER_NAME];
new iplayer[MAX_PLAYER_NAME];
new cmd[256];
new iplayerid, idx;
new tmp[256];
tmp = strtok(cmdtext, idx);
cmd = strtok(cmdtext, idx);
if(strcmp(cmd,\"/votehelp\", true) == 0) {
SendClientMessage(playerid,Arany,\"Ha kickelős szavazást akarsz indítani valaki ellen használd a /votekick parancsot\");
SendClientMessage(playerid,Arany,\"Ha kickelős szavazásra akarsz szavazni, használd a /vote-k parancsot!\");
return 1;
}
if(strcmp(cmd,\"/votekick\", true) == 0) {
if(!strlen(tmp)) {
SendClientMessage(playerid,Piros,\"HASZNÁLAT:/votekick [iD]\");
return 1;
}
if(IsPlayerConnected(iplayerid)) {
if((VoteKick[iplayerid] == true)) {
SendClientMessage(playerid,Piros,\"Ez a játékos már szerepel szavazásban.\");
}
else if((VoteKick[iplayerid] == false)) {
GetPlayerName(playerid, player, sizeof(player));
GetPlayerName(iplayerid, iplayer, sizeof(iplayer));
SendClientMessage(playerid,Arany,\"Szavazás elindítva.\");
format(string, sizeof(string),\"%s kickelős szavazást idított %s ellen. Szavazás: /vote-k [iD]\", player, iplayer);
SendClientMessageToAll(Arany, string);
VoteKick[iplayerid] = true;
Szavazott[playerid] = true;
}
} else {
SendClientMessage(playerid,Piros,\"Nincs ilyen játékos.\");
}
return 1;
}
if(strcmp(cmd,\"/vote-k\", true) == 0) {
if(!strlen(tmp)) {
SendClientMessage(playerid, Piros,\"HASZNÁLAT:/vote-k [iD]\");
return 1;
}
if(IsPlayerConnected(iplayerid)) {
GetPlayerName(playerid, player, sizeof(player));
GetPlayerName(iplayerid, iplayer, sizeof(iplayer));
if((VoteKick[iplayerid] = false)) {
SendClientMessage(playerid,Piros,\"Ez a játékos nincs szavazásban.\");
} else {
if((Szavazasok[iplayerid] = 0)) {
Szavazasok[iplayerid] = 1;
}
else if((Szavazasok[iplayerid] = 1)) {
Szavazasok[iplayerid] = 2;
}
else if((Szavazasok[iplayerid] = 2)) {
Szavazasok[iplayerid] = 3;
}
else if((Szavazasok[iplayerid] = 3)) {
Kick(iplayerid);
for(new i=0; i<MAX_PLAYERS; i++) {
if(IsPlayerConnected(i)) {
Szavazott = false;
}
}
}
else if((Szavazasok[iplayerid] == 0 || Szavazasok[iplayerid] == 1 || Szavazasok[iplayerid] == 2)) {
format(string, sizeof(string),\"%s szavazott %s kickelésére. Eddigi szavazatok: %d\", player, Szavazasok);
SendClientMessageToAll(Arany, string);
}
}
} else {
SendClientMessage(playerid,Piros,\"Nincs ilyen játékos.\");
}
return 1;
}
return 0;
}
 
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;
}
HexToInt(string[])
{
if (string[0]==0) return 0;
new i;
      new cur=1;
      new res=0;
      for (i=strlen(string);i>0;i--)
{
    if (string[i-1]<58) res=res+cur*(string[i-1]-48); else res=res+cur*(string[i-1]-65+10);
    cur=cur*16;
}
      return res;
}

 
AMX: http://www.solidfiles.com/d/342cd458f3/
« Utoljára szerkesztve: 2016. február 24. - 14:48:15 írta ǝuıןʎʞs »

SzavazásRendszer v2.0
« Válasz #1 Dátum: 2016. február 22. - 18:57:27 »
0 Show voters
Igényes téma. Képek pl? vagy valami?

SzavazásRendszer v2.0
« Válasz #2 Dátum: 2016. február 23. - 16:55:40 »
0 Show voters
Egy képet esetleg ki tudsz róla tenni ?
Itt a pawno kód, aki esetleg nem szeret letöltögetni:
 
#include <a_samp>
#define Arany HexToInt(\"A88710\")
#define Piros 0xAA3333AA
//Sziasztok! Én Chris_Wilson vagyok, és elhoztam nektek a 2. scriptem.
 
new bool: Szavazott[MAX_PLAYERS];
new bool: VoteKick[MAX_PLAYERS];
new Szavazasok[MAX_PLAYERS];
 
public OnFilterScriptInit()
{
print(\"-----------------------------------------\");
print(\"    Szavazós parancsok by Chris_Wilson         \");
print(\"-----------------------------------------\");
return 1;
}
public OnFilterScriptExit()
{
    print(\"-----------------------------------------\");
print(\"    Szavazós parancsok by Chris_Wilson      \");
print(\"-----------------------------------------\");
return 1;
}
public OnPlayerConnect(playerid)
{
Szavazasok[playerid] = 0;
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new string[256];
new player[MAX_PLAYER_NAME];
new iplayer[MAX_PLAYER_NAME];
new cmd[256];
new iplayerid, idx;
new tmp[256];
tmp = strtok(cmdtext, idx);
cmd = strtok(cmdtext, idx);
if(strcmp(cmd,\"/votehelp\", true) == 0) {
SendClientMessage(playerid,Arany,\"Ha kickelős szavazást akarsz indítani valaki ellen használd a /votekick parancsot\");
SendClientMessage(playerid,Arany,\"Ha kickelős szavazásra akarsz szavazni, használd a /vote-k parancsot!\");
return 1;
}
if(strcmp(cmd,\"/votekick\", true) == 0) {
if(!strlen(tmp)) {
SendClientMessage(playerid,Piros,\"HASZNÁLAT:/votekick [iD]\");
return 1;
}
if(IsPlayerConnected(iplayerid)) {
if((VoteKick[iplayerid] == true)) {
SendClientMessage(playerid,Piros,\"Ez a játékos már szerepel szavazásban.\");
}
else if((VoteKick[iplayerid] == false)) {
GetPlayerName(playerid, player, sizeof(player));
GetPlayerName(iplayerid, iplayer, sizeof(iplayer));
SendClientMessage(playerid,Arany,\"Szavazás elindítva.\");
format(string, sizeof(string),\"%s kickelős szavazást idított %s ellen. Szavazás: /vote-k [iD]\", player, iplayer);
SendClientMessageToAll(Arany, string);
VoteKick[iplayerid] = true;
Szavazott[playerid] = true;
}
} else {
SendClientMessage(playerid,Piros,\"Nincs ilyen játékos.\");
}
return 1;
}
if(strcmp(cmd,\"/vote-k\", true) == 0) {
if(!strlen(tmp)) {
SendClientMessage(playerid, Piros,\"HASZNÁLAT:/vote-k [iD]\");
return 1;
}
if(IsPlayerConnected(iplayerid)) {
GetPlayerName(playerid, player, sizeof(player));
GetPlayerName(iplayerid, iplayer, sizeof(iplayer));
if((VoteKick[iplayerid] = false)) {
SendClientMessage(playerid,Piros,\"Ez a játékos nincs szavazásban.\");
} else {
if((Szavazasok[iplayerid] = 0)) {
Szavazasok[iplayerid] = 1;
}
else if((Szavazasok[iplayerid] = 1)) {
Szavazasok[iplayerid] = 2;
}
else if((Szavazasok[iplayerid] = 2)) {
Szavazasok[iplayerid] = 3;
}
else if((Szavazasok[iplayerid] = 3)) {
Kick(iplayerid);
for(new i=0; i<MAX_PLAYERS; i++) {
if(IsPlayerConnected(i)) {
Szavazott = false;
}
}
}
else if((Szavazasok[iplayerid] == 0 || Szavazasok[iplayerid] == 1 || Szavazasok[iplayerid] == 2)) {
format(string, sizeof(string),\"%s szavazott %s kickelésére. Eddigi szavazatok: %d\", player, Szavazasok);
SendClientMessageToAll(Arany, string);
}
}
} else {
SendClientMessage(playerid,Piros,\"Nincs ilyen játékos.\");
}
return 1;
}
return 0;
}
 
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;
}
HexToInt(string[])
{
if (string[0]==0) return 0;
new i;
      new cur=1;
      new res=0;
      for (i=strlen(string);i>0;i--)
{
    if (string[i-1]<58) res=res+cur*(string[i-1]-48); else res=res+cur*(string[i-1]-65+10);
    cur=cur*16;
}
      return res;
}
« Utoljára szerkesztve: 2016. február 23. - 16:58:06 írta Mormota »

SzavazásRendszer v2.0
« Válasz #3 Dátum: 2016. február 23. - 20:19:49 »
0 Show voters
igen, megpróbálok

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal