Untitled
unknown
plain_text
3 months ago
19 kB
7
Indexable
#include <YSI_Coding\y_hooks> //------------------------------------------------------------------- // Project create by #nDP // // Fb.com/nguyenduyphuong.com // // Copyright by nDP" // //------------------------------------------------------------------- //____________________________________________________________________________// hook OnPlayerDisconnect(playerid, reason) { if(ChonTaiXiu[playerid] == 1) { ChonTaiAll--; TienCuocTaiAll -= TienCuocTaiXiu[playerid]; TienCuocTaiXiu[playerid] = 0; ChonTaiXiu[playerid] = 0; } if(ChonTaiXiu[playerid] == 2) { ChonXiuAll--; TienCuocXiuAll -= TienCuocTaiXiu[playerid]; TienCuocTaiXiu[playerid] = 0; ChonTaiXiu[playerid] = 0; } return 1; } hook OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == DIALOG_TAIXIU && response == 1) { if(listitem == 0) { // Thông tin phiên tài xỉu hiện tại thongtin_phienTX(playerid); return 1; } if(listitem == 1) { // Danh sách người đặt cược tài xỉu hiện tại showAllPlayerTX(playerid); return 1; } if(listitem == 2) { // Xem lịch sử phiên tài xỉu ShowPlayerDialog(playerid, DIALOG_LS_TAIXIU, DIALOG_STYLE_INPUT, "TAI/XIU", "{ffe066}>{FFFFFF} Ban vui long nhap phien tai xiu, ma ban muon xem lai: ", "Xem ngay", "Huy bo"); return 1; } if(listitem == 4) { // Đăng ký tài xỉu if(khoaDatCuocTX == 1) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Thoi gian dat cuoc da het, vui long doi phien tai xiu tiep theo."); return 1; } DangKyTaiXiu(playerid); return 1; } return 1; } if(dialogid == DIALOG_LS_TAIXIU && response == 1) { if(!IsNumeric(inputtext) || strval(inputtext) < 0 || strval(inputtext) > MAX_PHIEN_TAIXIU) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Loi, phien tai xiu ban nhap khong hop le."); return 1; } if(strval(inputtext) > Phientaixiu + 1) { new string[1280]; format(string, sizeof(string), "{ff0000}[!]{FFFFFF} Phien tai xiu hien tai chi la phien %s, ban khong the nhap phien lon hon.", Phientaixiu); SendClientMessage(playerid, -1, string); return 1; } if(PlayerInfo[playerid][pAdmin] == 0) { if(tx_countMoney_Tai[strval(inputtext)] == 0 || tx_countMoney_Tai[strval(inputtext)] == 0) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Phien tai xiu nay khong hoat dong."); return 1; } } HistoryTX(playerid, strval(inputtext)); return 1; } if(dialogid == DIALOG_DANGKY_TAIXIU && response == 1) { datcuoc_taixiu(playerid, listitem); return 1; } if(dialogid == DIALOG_DATCUOC_TAI && response == 1) { if(LockTaiXiu == 1) { SendClientMessageEx(playerid, -1, "{ffe066}[!]{FFFFFF} Hien tai he thong tai xiu, chua duoc mo!"); return 1; } if(khoaDatCuocTX == 1) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Thoi gian dat cuoc da het, vui long doi phien tai xiu tiep theo."); return 1; } if(!IsNumeric(inputtext)) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Loi ban khong duoc phep su dung ky tu trong nay."); return 1; } if(strval(inputtext) < MIN_TAIXIU) { new string[1280]; format(string, sizeof(string), "{ff0000}[!]{FFFFFF} So tien dat cuoc cua ban khong duoc nho hon %s$.", number_format(MIN_TAIXIU)); SendClientMessage(playerid, -1, string); return 1; } if(strval(inputtext) > MAX_TAIXIU) { new string[1280]; format(string, sizeof(string), "{ff0000}[!]{FFFFFF} So tien dat cuoc cua ban khong duoc lon hon %s$.", number_format(MAX_TAIXIU)); SendClientMessage(playerid, -1, string); return 1; } new ChenhLech = TienCuocTaiAll - TienCuocXiuAll; if (ChenhLech < 0) { ChenhLech = -ChenhLech; // Đưa về giá trị tuyệt đối } new Float:TiLeChoPhep = 0.1; // 10% tổng cược new GioiHanChenhLech = floatround((TienCuocTaiAll + TienCuocXiuAll) * TiLeChoPhep); if (ChenhLech >= GioiHanChenhLech) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Hien tai tien cuoc tai qua nhieu so voi xiu ban hien chi co the cuoc xiu !!!."); return 1; // Không cho phép đặt cược nếu chênh lệch quá 10% } // -------------------------------------------------------------------------- new tiencuoc = strval(inputtext); if(tiencuoc > PlayerInfo[playerid][pCash]) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} So tien dat cuoc nay lon hon so tien ban dang co, vui long thu lai."); return 1; } ChonTaiXiu[playerid] = 1; TienCuocTaiXiu[playerid] = tiencuoc; PlayerInfo[playerid][pCash] -= tiencuoc; ChonTaiAll++; TienCuocTaiAll += tiencuoc; TimeChonTaiXiu[playerid] = TimeTaiXiu; new string[1280]; format(string,sizeof(string),"{ffe066}>{FFFFFF} Ban da dat cuoc thanh cong %s$ vao {ff0000}Tai{FFFFFF} thanh cong | Phien tai xiu : %d.",number_format(tiencuoc), Phientaixiu); SendClientMessageEx(playerid, -1, string); if(tiencuoc > TienIdTaiWin) { IdTaiWin = playerid; TienIdTaiWin = tiencuoc; } new log_taixiu[1280]; format(log_taixiu,sizeof(log_taixiu),"%s, da dat cuoc %s$ vao Tai o phien tai xiu %d thanh cong.", GetPlayerNameEx(playerid), number_format(tiencuoc), Phientaixiu); Log("logs/dangky_taixiu.log", log_taixiu); // -------------------------------------------------------------------------- return 1; } if(dialogid == DIALOG_DATCUOC_XIU && response == 1) { if(LockTaiXiu == 1) { SendClientMessageEx(playerid, -1, "{ffe066}[!]{FFFFFF} Hien tai he thong tai xiu, chua duoc mo!"); return 1; } if(khoaDatCuocTX == 1) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Thoi gian dat cuoc da het, vui long doi phien tai xiu tiep theo."); return 1; } if(!IsNumeric(inputtext)) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Loi ban khong duoc phep su dung ky tu trong nay."); return 1; } if(strval(inputtext) < MIN_TAIXIU) { new string[1280]; format(string, sizeof(string), "{ff0000}[!]{FFFFFF} So tien dat cuoc cua ban khong duoc nho hon %s$.", number_format(MIN_TAIXIU)); SendClientMessage(playerid, -1, string); return 1; } if(strval(inputtext) > MAX_TAIXIU) { new string[1280]; format(string, sizeof(string), "{ff0000}[!]{FFFFFF} So tien dat cuoc cua ban khong duoc lon hon %s$.", number_format(MAX_TAIXIU)); SendClientMessage(playerid, -1, string); return 1; } new ChenhLech = TienCuocTaiAll - TienCuocXiuAll; if (ChenhLech < 0) { ChenhLech = -ChenhLech; // Đưa về giá trị tuyệt đối } new Float:TiLeChoPhep = 0.1; // 10% tổng cược new GioiHanChenhLech = floatround((TienCuocTaiAll + TienCuocXiuAll) * TiLeChoPhep); if (ChenhLech >= GioiHanChenhLech) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} Hien tai tien cuoc xiu qua nhieu so voi tai ban hien chi co the cuoc tai !!!."); return 1; // Không cho phép đặt cược nếu chênh lệch quá 10% } // -------------------------------------------------------------------------- new tiencuoc = strval(inputtext); if(tiencuoc > PlayerInfo[playerid][pCash]) { SendClientMessage(playerid, -1, "{ff0000}[!]{FFFFFF} So tien dat cuoc nay lon hon so tien ban dang co, vui long thu lai."); return 1; } ChonTaiXiu[playerid] = 2; TienCuocTaiXiu[playerid] = tiencuoc; PlayerInfo[playerid][pCash] -= tiencuoc; ChonXiuAll++; TienCuocXiuAll += tiencuoc; TimeChonTaiXiu[playerid] = TimeTaiXiu; new string[1280]; format(string,sizeof(string),"{ffe066}>{FFFFFF} Ban da dat cuoc thanh cong %s$ vao {00ff00}Xiu{FFFFFF} thanh cong | Phien tai xiu : %d.",number_format(tiencuoc), Phientaixiu); SendClientMessageEx(playerid, -1, string); if(tiencuoc > TienIdXiuWin) { IdXiuWin = playerid; TienIdXiuWin = tiencuoc; } new log_taixiu[1280]; format(log_taixiu,sizeof(log_taixiu),"%s, da dat cuoc %s$ vao Xiu o phien tai xiu %d thanh cong.", GetPlayerNameEx(playerid), number_format(tiencuoc), Phientaixiu); Log("logs/dangky_taixiu.log", log_taixiu); // -------------------------------------------------------------------------- return 1; } return 1; } task eventtaixiu[1000]() { if(LockTaiXiu == 0) { if(TimeTaiXiu > 0) { TimeTaiXiu--; if(TimeTaiXiu == 10) { khoaDatCuocTX = 1; new string_tx[1280]; format(string_tx,sizeof(string_tx),"[TAI/XIU] Phien tai xiu #%s, sap dien ra tham gia ngay (( /taixiu ))",number_format(Phientaixiu)); SendClientMessageToAll(-1, string_tx); } } if(TimeTaiXiu <= 0) { new ketqua[32]; if(HeThongTaiXiu == 0) { new TaiLienTuc = (LichSuTaiXiu[0] == 1 && LichSuTaiXiu[1] == 1); new XiuLienTuc = (LichSuTaiXiu[0] == 2 && LichSuTaiXiu[1] == 2); if (TaiLienTuc) { // Nếu có 2 ván Tài liên tục, tăng tỷ lệ Xỉu KetQuaTaiXiu = (random(100) < 70) ? 2 : 1; } else if (XiuLienTuc) { // Nếu có 2 ván Xỉu liên tục, tăng tỷ lệ Tài KetQuaTaiXiu = (random(100) < 70) ? 1 : 2; } else { // Xác suất bình thường /*switch(random(4)) { case 0,2,4: KetQuaTaiXiu = 1; case 1,3: KetQuaTaiXiu = 2; }*/ new KetQuaXucXac1 = randomTaixiu(1, 6); new KetQuaXucXac2 = randomTaixiu(1, 6); new KetQuaXucXac3 = randomTaixiu(1, 6); new TongDiem = KetQuaXucXac1 + KetQuaXucXac2 + KetQuaXucXac3; if (TongDiem == 3 || TongDiem == 18) { KetQuaTaiXiu = 0; // Trường hợp đặc biệt (nhà cái ăn hết hoặc xử lý riêng) } else if (TongDiem >= 4 && TongDiem <= 10) { KetQuaTaiXiu = 2; // Xỉu } else { KetQuaTaiXiu = 1; // Tài } } // Cập nhật lịch sử ván trước LichSuTaiXiu[2] = LichSuTaiXiu[1]; LichSuTaiXiu[1] = LichSuTaiXiu[0]; LichSuTaiXiu[0] = KetQuaTaiXiu; } if(HeThongTaiXiu == 1) { KetQuaTaiXiu = 1; } if(HeThongTaiXiu == 2) { KetQuaTaiXiu = 2; } if(HeThongTaiXiu == 3 && TienCuocTaiAll > TienCuocXiuAll) { KetQuaTaiXiu = 1; } if(HeThongTaiXiu == 3 && TienCuocTaiAll < TienCuocXiuAll) { KetQuaTaiXiu = 2; } if(HeThongTaiXiu == 3 && TienCuocTaiAll == TienCuocXiuAll) { new TaiLienTuc = (LichSuTaiXiu[0] == 1 && LichSuTaiXiu[1] == 1); new XiuLienTuc = (LichSuTaiXiu[0] == 2 && LichSuTaiXiu[1] == 2); if (TaiLienTuc) { // Nếu có 2 ván Tài liên tục, tăng tỷ lệ Xỉu KetQuaTaiXiu = (random(100) < 70) ? 2 : 1; } else if (XiuLienTuc) { // Nếu có 2 ván Xỉu liên tục, tăng tỷ lệ Tài KetQuaTaiXiu = (random(100) < 70) ? 1 : 2; } else { // Xác suất bình thường /*switch(random(4)) { case 0,2,4: KetQuaTaiXiu = 1; case 1,3: KetQuaTaiXiu = 2; }*/ new KetQuaXucXac1 = randomTaixiu(1, 6); new KetQuaXucXac2 = randomTaixiu(1, 6); new KetQuaXucXac3 = randomTaixiu(1, 6); new TongDiem = KetQuaXucXac1 + KetQuaXucXac2 + KetQuaXucXac3; if (TongDiem == 3 || TongDiem == 18) { KetQuaTaiXiu = 0; // Trường hợp đặc biệt (nhà cái ăn hết hoặc xử lý riêng) } else if (TongDiem >= 4 && TongDiem <= 10) { KetQuaTaiXiu = 2; // Xỉu } else { KetQuaTaiXiu = 1; // Tài } } // Cập nhật lịch sử ván trước LichSuTaiXiu[2] = LichSuTaiXiu[1]; LichSuTaiXiu[1] = LichSuTaiXiu[0]; LichSuTaiXiu[0] = KetQuaTaiXiu; } if(HeThongTaiXiu == 4 && TienCuocTaiAll > TienCuocXiuAll) { KetQuaTaiXiu = 2; } if(HeThongTaiXiu == 4 && TienCuocTaiAll < TienCuocXiuAll) { KetQuaTaiXiu = 1; } if(HeThongTaiXiu == 4 && TienCuocTaiAll == TienCuocXiuAll) { new TaiLienTuc = (LichSuTaiXiu[0] == 1 && LichSuTaiXiu[1] == 1); new XiuLienTuc = (LichSuTaiXiu[0] == 2 && LichSuTaiXiu[1] == 2); if (TaiLienTuc) { // Nếu có 2 ván Tài liên tục, tăng tỷ lệ Xỉu KetQuaTaiXiu = (random(100) < 70) ? 2 : 1; } else if (XiuLienTuc) { // Nếu có 2 ván Xỉu liên tục, tăng tỷ lệ Tài KetQuaTaiXiu = (random(100) < 70) ? 1 : 2; } else { // Xác suất bình thường /*switch(random(4)) { case 0,2,4: KetQuaTaiXiu = 1; case 1,3: KetQuaTaiXiu = 2; }*/ new KetQuaXucXac1 = randomTaixiu(1, 6); new KetQuaXucXac2 = randomTaixiu(1, 6); new KetQuaXucXac3 = randomTaixiu(1, 6); new TongDiem = KetQuaXucXac1 + KetQuaXucXac2 + KetQuaXucXac3; if (TongDiem == 3 || TongDiem == 18) { KetQuaTaiXiu = 0; // Trường hợp đặc biệt (nhà cái ăn hết hoặc xử lý riêng) } else if (TongDiem >= 4 && TongDiem <= 10) { KetQuaTaiXiu = 2; // Xỉu } else { KetQuaTaiXiu = 1; // Tài } } } switch(KetQuaTaiXiu) { case 1: ketqua = "{ff0000}Tai{ffffff}"; case 2: ketqua = "{00ff00}Xiu{ffffff}"; } new totalwealth; totalwealth = TienCuocTaiAll + TienCuocXiuAll - TienCuocTraAll; new taixiucc[1280]; if(TienCuocTaiAll == 0 && KetQuaTaiXiu == 1) { format(taixiucc,sizeof(taixiucc),"[TAI/XIU] Phien #%s ket qua (%s) chien thang. Tong tien cuoc : %s$",number_format(Phientaixiu),ketqua,number_format(totalwealth)); SendClientMessageToAll(-1, taixiucc); } if(TienCuocTaiAll > 0 && KetQuaTaiXiu == 1) { format(taixiucc,sizeof(taixiucc),"[TAI/XIU] Phien #%s ket qua (%s) chien thang. Tong tien cuoc : %s$ - (%s %s$)",number_format(Phientaixiu),ketqua,number_format(totalwealth),GetPlayerNameEx(IdTaiWin),number_format(TienIdTaiWin*2)); SendClientMessageToAll(-1, taixiucc); } if(TienCuocXiuAll == 0 && KetQuaTaiXiu == 2) { format(taixiucc,sizeof(taixiucc),"[TAI/XIU] Phien #%s ket qua (%s) chien thang. Tong tien cuoc : %s$",number_format(Phientaixiu),ketqua,number_format(totalwealth)); SendClientMessageToAll(-1, taixiucc); } if(TienCuocXiuAll > 0 && KetQuaTaiXiu == 2) { format(taixiucc,sizeof(taixiucc),"[TAI/XIU] Phien #%s ket qua (%s) chien thang. Tong tien cuoc : %s$ - (%s %s$)",number_format(Phientaixiu),ketqua,number_format(totalwealth),GetPlayerNameEx(IdXiuWin),number_format(TienIdXiuWin*2)); SendClientMessageToAll(-1, taixiucc); } foreach(new i: Player) { if(TimeChonTaiXiu[i] < 10) { if(TienCuocTaiXiu[i] > 0) { new string[1280]; format(string,sizeof(string),"[TAI/XIU] Ban da duoc tra lai %s$ va bi loai khoi phien tai xiu nay de can bang phien tai xiu", number_format(TienCuocTaiXiu[i])); SendClientMessageEx(i, -1, string); SendClientMessageEx(i, -1, "[TAI/XIU] Co gang tham gia som hon de khong bi loai ra nhe"); PlayerInfo[i][pCash] += TienCuocTaiXiu[i]; TienCuocTraAll = TienCuocTraAll + TienCuocTaiXiu[i]; } ChonTaiXiu[i] = 0; TimeChonTaiXiu[i] = 0; TienCuocTaiXiu[i ]= 0; } if(TimeChonTaiXiu[i] >= 10) { if(ChonTaiXiu[i] == KetQuaTaiXiu) { if(TienCuocTaiXiu[i] > 10000000) { PlayerInfo[i][pCash] += TienCuocTaiXiu[i]*2; PlayerInfo[i][pCash] -= floatround((TienCuocTaiXiu[i]*2) * 0.1); new string[1280]; format(string,sizeof(string),"[TAI/XIU] Chuc mung, ban da chien thang trong phien tai xiu nay va nhan duoc %s$ (Phi : %s$)", number_format(TienCuocTaiXiu[i]*2), number_format(floatround((TienCuocTaiXiu[i]*2) * 0.1))); SendClientMessage(i, -1, string); } else { PlayerInfo[i][pCash] += TienCuocTaiXiu[i]*2; new string[1280]; format(string,sizeof(string),"[TAI/XIU] Chuc mung, ban da chien thang trong phien tai xiu nay va nhan duoc %s$",number_format(TienCuocTaiXiu[i]*2)); SendClientMessage(i, -1, string); } ChonTaiXiu[i] = 0; TimeChonTaiXiu[i] = 0; TienCuocTaiXiu[i ]= 0; } else if(ChonTaiXiu[i] != KetQuaTaiXiu) { if(ChonTaiXiu[i] > 0) { SendClientMessageEx(i, -1, "[TAI/XIU] Ban da thua trong phien tai xiu nay, chia buon =]]z"); } ChonTaiXiu[i] = 0; TimeChonTaiXiu[i] = 0; TienCuocTaiXiu[i ]= 0; } } } // LỊCH SỬ PHIÊN TÀI XỈU new year, month, day; getdate(year, month, day); format(tx_Time[Phientaixiu], 1280, "%d/%d/%d - %d:%d:%d", month, day, year, hour, minuite,second); tx_countMoney_Tai[Phientaixiu] = TienCuocTaiAll; tx_countMoney_Xiu[Phientaixiu] = TienCuocXiuAll; format(tx_Ketqua[Phientaixiu], 1280, "%s", ketqua); if(KetQuaTaiXiu == 1) { format(tx_NguoiWinner[Phientaixiu], 1280, "%s", GetPlayerNameEx(IdTaiWin)); tx_WinnerMoney[Phientaixiu] = TienIdTaiWin*2; } else if(KetQuaTaiXiu == 2) { format(tx_NguoiWinner[Phientaixiu], 1280, "%s", GetPlayerNameEx(IdXiuWin)); tx_WinnerMoney[Phientaixiu] = TienIdXiuWin*2; } // -------------------------------------------- Phientaixiu++; KetQuaTaiXiu = 0; TimeTaiXiu = THOIGIAN_TAIXIU; ChonTaiAll = 0; ChonXiuAll = 0; TienCuocTaiAll = 0; TienCuocXiuAll = 0; IdTaiWin = -1; IdXiuWin = -1; TienIdTaiWin = -1; TienIdXiuWin = -1; TienCuocTraAll = 0; khoaDatCuocTX = 0; } } return 1; }
Editor is loading...
Leave a Comment