#include #include #include #include #include #include //#include #define COLOR_YELLOW 0xFFFF00AA #define COLOR_SYSTEM_PW 0xFFFF33AA // YELLOW (FFFF33) system personal warning ("you must be in a bank") #define COLOR_MENU 0xFFFFFFAA // WHITE (FFFFFF) menu's (/help) #define COLOR_SYSTEM_GM 0xFF9966AA // LIGHT ORANGE-RED (FF9966) system generated general message ("x just bought the four dragons!") //#define FILE_SETTINGS "settings.ini" #define MAX_3DLOCS 3 new Float:casCoords[MAX_3DLOCS][6] = { // {Xmin, Ymin, Zmin, Xmax, Ymax, Zmax} {1925.1511,968.2360,992.4687,1982.3024,1067.4122,995.5211}, // four dragons {2179.5100,1559.0856,1000.0,2281.1492,1622.9048,1010.0}, //caligula {1113.6541,-13.2672,1000.6718,1143.2858,12.4690,1003.0662} // redsands casino }; new Float:casSpawn[MAX_3DLOCS][3] = { {2030.2551,1007.9247,10.8203}, // four dragons {2186.8896,1680.6750,11.1027}, //caligula {1658.9501,2255.8767,10.8203} // redsands casino }; //new gamblelicence[MAX_PLAYERS]; //new spawned[MAX_PLAYERS]; new logged[MAX_PLAYERS]; new playername[MAX_PLAYER_NAME]; new strings[256]; new Float:X250[MAX_PLAYERS]; new Float:Y250[MAX_PLAYERS]; new Float:Z250[MAX_PLAYERS]; new isincasino[MAX_PLAYERS]; new currentmoney[MAX_PLAYERS]; //new tmps1[256]; new GameTextForPlayers1[MAX_PLAYERS][36]; new GameTextForPlayers2[MAX_PLAYERS][36]; new GameTextForPlayersCounter[MAX_PLAYERS]; new File:Casino; public OnFilterScriptInit() { //print("--CASINO GAMBLE--"); SetTimer("CasinoUpdate", 1100, 1); if(!fopen("Casino",io_read)) { print("\r\n\r\nError: Keine Casino Daten gefunden. Neue Daten Datei wird erstellt. (Server.exe schließen und neu starten!)"); Casino=fopen("Casino",io_readwrite); } else { print("\r\n\r\nCasino Daten gefunden. Daten werden geladen..."); Casino=fopen("Casino",io_readwrite); } fclose(Casino); return 1; } public Casino_No(playerid) { new PName[MAX_PLAYER_NAME]; GetPlayerName(playerid,PName,sizeof(PName)); Casino=fopen("Casino",io_readwrite); dini_Set("Casino",PName,"N"); fclose(Casino); return 1; } public Casino_Dis(playerid) { new PName[MAX_PLAYER_NAME]; GetPlayerName(playerid,PName,sizeof(PName)); Casino=fopen("Casino",io_readwrite); dini_Set("Casino",PName,"D"); fclose(Casino); return 1; } public Casino_Yes(playerid) { new PName[MAX_PLAYER_NAME]; GetPlayerName(playerid,PName,sizeof(PName)); Casino=fopen("Casino",io_readwrite); dini_Set("Casino",PName,"Y"); fclose(Casino); return 1; } public OnPlayerConnect(playerid) { new PName[MAX_PLAYER_NAME]; GetPlayerName(playerid,PName,sizeof(PName)); Casino=fopen("Casino",io_readwrite); if(strcmp(dini_Get("Casino",PName),"Y",false)==0) { if(strlen(dini_Get("Casino",PName))==1) // seems streams with no data also run through this part. { fclose(Casino); } else // If there is no data present, { Casino_No(playerid); // Make some! } } else if(strcmp(dini_Get("Casino",PName),"N",false)==0) { fclose(Casino); } else if(strcmp(dini_Get("Casino",PName),"D",false)==0) { fclose(Casino); } else { Casino_No(playerid); } return 1; } public OnPlayerCommandText(playerid, cmdtext[]){ new cmd[256]; if(strcmp(cmd, "/gamble", true) == 0) { new tracedIDName[MAX_PLAYER_NAME]; //new strn[255]; //#pragma unused params if (logged[playerid] == 1){ GetPlayerName(playerid, playername, sizeof(playername)); if(strcmp(dini_Get("Casino",tracedIDName),"Yes",true)==0) { SendClientMessage(playerid, COLOR_SYSTEM_PW, "* Du hast bereits eine GambleLizens"); return 1; } if (logged[playerid] == 0) { SendClientMessage(playerid, COLOR_SYSTEM_PW, "* Bitte logge dich ein, um zu spielen."); return 1; } if (GetPlayerMoney(playerid) >= 7500){ // TO-DO money scanner update //format(moneyreason, sizeof(moneyreason), "* Money decreased by $%d (old: $%d), because player-id %d bought a gamble licence",GAMBLE_LICENCE, GetPlayerMoney(playerid), playerid); GivePlayerMoney(playerid, -7500); //dini_IntSet(udb_encode(playername), "gamblelicence", 1); //gamblelicence[playerid] = 1; format(strings, sizeof(strings), "--- %s (id: %d) bought a gamble licence for $7500.", playername,playerid); printf(strings); format(strings, sizeof(strings), "* %s (id: %d) bought a gamble licence for $7500.", playername,playerid); SendClientMessageToAll(COLOR_SYSTEM_GM, strings); Casino_Yes(playerid); } else { format(strings, sizeof(strings), "* Du hast nicht genug Geld fuer eine Spiellizens. Sie kostet $7500."); SendClientMessage(playerid, COLOR_SYSTEM_PW, strings); return 1; } } return 1; } return 0; } // public CasinoUpdate() { new PName[MAX_PLAYER_NAME]; if((strcmp(dini_Get("Casino",PName),"Y",false)==0)) for(new i=0; i= casCoords[j][0] && X250[i] <= casCoords[j][3] && Y250[i] >= casCoords[j][1] && Y250[i] <= casCoords[j][4] && Z250[i] >= casCoords[j][2] && Z250[i] <= casCoords[j][5]) { //if (strval(tmps1) == 1) { //if(gamblelicence[i] == 1) { isincasino[i] = 1; currentmoney[i] = GetPlayerMoney(i); return 1; } else { format(GameTextForPlayers1[i], 36, "~w~DU HAST KEINE GAMBLE LICENCE"); format(GameTextForPlayers2[i], 36, "KAUFE EINE MIT /GAMBLE!"); GameTextForPlayersCounter[i]=5; SetPlayerInterior(i, 0); SetPlayerPos(i, casSpawn[j][0], casSpawn[j][1], casSpawn[j][2]); //} else { if(isincasino[i] == 1){ isincasino[i] = 0; return 1; } //} } } } //return 1; //} } return true; }