public void AnnounceCommand(Client player, string message) { if (NAPI.Data.GetEntityData(player, EntityData.PLAYER_KILLED) != 0) { NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_ERROR + Messages.ERR_PLAYER_IS_DEAD); } else { int money = NAPI.Data.GetEntitySharedData(player, EntityData.PLAYER_MONEY); if (money < Constants.PRICE_ANNOUNCEMENT) { NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_ERROR + Messages.ERR_PLAYER_NOT_ENOUGH_MONEY); } else { AnnoucementModel annoucement = new AnnoucementModel(); annoucement.winner = NAPI.Data.GetEntityData(player, EntityData.PLAYER_SQL_ID); annoucement.amount = Constants.PRICE_ANNOUNCEMENT; annoucement.annoucement = message; annoucement.given = false; annoucement.id = Database.SendAnnoucement(annoucement); // Removes player money NAPI.Data.SetEntitySharedData(player, EntityData.PLAYER_MONEY, money - Constants.PRICE_ANNOUNCEMENT); SendNewsMessage(player, message); NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_INFO + Messages.INF_ANNOUNCE_PUBLISHED); // Log the announcement into the database Database.LogPayment(player.Name, Messages.GEN_FACTION_NEWS, Messages.GEN_NEWS_ANNOUNCE, Constants.PRICE_ANNOUNCEMENT); } } }
public void AnunciarCommand(Client player, string message) { if (NAPI.Data.GetEntityData(player, EntityData.PLAYER_KILLED) != 0) { NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_ERROR + Messages.ERR_PLAYER_IS_DEAD); } else { int money = NAPI.Data.GetEntitySharedData(player, EntityData.PLAYER_MONEY); if (money < Constants.PRICE_ANNOUNCEMENT) { NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_ERROR + Messages.ERR_PLAYER_NOT_ENOUGH_MONEY); } else { AnnoucementModel annoucement = new AnnoucementModel(); annoucement.winner = NAPI.Data.GetEntityData(player, EntityData.PLAYER_SQL_ID); annoucement.amount = Constants.PRICE_ANNOUNCEMENT; annoucement.annoucement = message; annoucement.given = false; annoucement.id = Database.SendAnnoucement(annoucement); // Le quitamos el dinero al jugador NAPI.Data.SetEntitySharedData(player, EntityData.PLAYER_MONEY, money - Constants.PRICE_ANNOUNCEMENT); SendNewsMessage(player, message); NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_INFO + "Has publicado un anuncio, anunciarse cuesta 500$."); // Metemos el log en la base de datos Database.LogPayment(player.Name, "Arca WN", "Anuncio WeazelNews", Constants.PRICE_ANNOUNCEMENT); } } }
public void PrizeCommand(Client player, string targetString, int prize, string contest) { if (player.GetData(EntityData.PLAYER_KILLED) != 0) { player.SendChatMessage(Constants.COLOR_ERROR + Messages.ERR_PLAYER_IS_DEAD); } else if (player.GetData(EntityData.PLAYER_FACTION) != Constants.FACTION_NEWS) { player.SendChatMessage(Constants.COLOR_ERROR + Messages.ERR_PLAYER_NOT_NEWS_FACTION); } else { Client target = int.TryParse(targetString, out int targetId) ? Globals.GetPlayerById(targetId) : NAPI.Player.GetPlayerFromName(targetString); if (target != null && target.HasData(EntityData.PLAYER_PLAYING) == true) { int prizeAmount = GetRemainingFounds(); if (prizeAmount >= prize) { AnnoucementModel prizeModel = new AnnoucementModel(); int targetMoney = target.GetSharedData(EntityData.PLAYER_MONEY); string playerMessage = string.Format(Messages.INF_PRIZE_GIVEN, prize, target.Name); string targetMessage = string.Format(Messages.INF_PRIZE_RECEIVED, player.Name, prize, contest); targetMoney += prize; target.SetSharedData(EntityData.PLAYER_MONEY, targetMoney); prizeModel.amount = prize; prizeModel.winner = target.GetData(EntityData.PLAYER_SQL_ID); prizeModel.annoucement = contest; prizeModel.journalist = player.GetData(EntityData.PLAYER_SQL_ID); prizeModel.given = true; player.SendChatMessage(Constants.COLOR_INFO + playerMessage); target.SendChatMessage(Constants.COLOR_INFO + targetMessage); Task.Factory.StartNew(() => { prizeModel.id = Database.GivePrize(prizeModel); annoucementList.Add(prizeModel); // Log the money won Database.LogPayment(player.Name, target.Name, Messages.GEN_NEWS_PRIZE, prize); }); } else { player.SendChatMessage(Constants.COLOR_INFO + Messages.ERR_FACTION_NOT_ENOUGH_MONEY); } } else { player.SendChatMessage(Constants.COLOR_ERROR + Messages.ERR_PLAYER_NOT_FOUND); } } }
public void PrizeCommand(Client player, string targetString, int prize, string contest) { if (player.GetData(EntityData.PLAYER_KILLED) != 0) { player.SendChatMessage(Constants.COLOR_ERROR + ErrRes.player_is_dead); } else if (player.GetData(EntityData.PLAYER_FACTION) != Constants.FACTION_NEWS) { player.SendChatMessage(Constants.COLOR_ERROR + ErrRes.player_not_news_faction); } else { Client target = int.TryParse(targetString, out int targetId) ? Globals.GetPlayerById(targetId) : NAPI.Player.GetPlayerFromName(targetString); if (target != null && target.HasData(EntityData.PLAYER_PLAYING) == true) { int prizeAmount = GetRemainingFounds(); if (prizeAmount >= prize) { AnnoucementModel prizeModel = new AnnoucementModel(); int targetMoney = target.GetSharedData(EntityData.PLAYER_MONEY); string playerMessage = string.Format(InfoRes.prize_given, prize, target.Name); string targetMessage = string.Format(InfoRes.prize_received, player.Name, prize, contest); targetMoney += prize; target.SetSharedData(EntityData.PLAYER_MONEY, targetMoney); prizeModel.amount = prize; prizeModel.winner = target.GetData(EntityData.PLAYER_SQL_ID); prizeModel.annoucement = contest; prizeModel.journalist = player.GetData(EntityData.PLAYER_SQL_ID); prizeModel.given = true; player.SendChatMessage(Constants.COLOR_INFO + playerMessage); target.SendChatMessage(Constants.COLOR_INFO + targetMessage); Task.Factory.StartNew(() => { prizeModel.id = Database.GivePrize(prizeModel); annoucementList.Add(prizeModel); // Log the money won Database.LogPayment(player.Name, target.Name, GenRes.news_prize, prize); }); } else { player.SendChatMessage(Constants.COLOR_INFO + ErrRes.faction_not_enough_money); } } else { player.SendChatMessage(Constants.COLOR_ERROR + ErrRes.player_not_found); } } }
public void PremiarCommand(Client player, String targetString, int prize, string contest) { if (NAPI.Data.GetEntityData(player, EntityData.PLAYER_KILLED) != 0) { NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_ERROR + Messages.ERR_PLAYER_IS_DEAD); } else if (NAPI.Data.GetEntityData(player, EntityData.PLAYER_FACTION) != Constants.FACTION_NEWS) { NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_ERROR + Messages.ERR_PLAYER_NOT_NEWS_FACTION); } else { Client target = Int32.TryParse(targetString, out int targetId) ? Globals.GetPlayerById(targetId) : NAPI.Player.GetPlayerFromName(targetString); if (target != null && NAPI.Data.HasEntityData(target, EntityData.PLAYER_PLAYING) == true) { int prizeAmount = GetRemainingFounds(); if (prizeAmount >= prize) { AnnoucementModel prizeModel = new AnnoucementModel(); int targetMoney = NAPI.Data.GetEntitySharedData(target, EntityData.PLAYER_MONEY); String playerMessage = String.Format(Messages.INF_PRIZE_GIVEN, prize, target.Name); String targetMessage = String.Format(Messages.INF_PRIZE_RECEIVED, player.Name, prize, contest); targetMoney += prize; NAPI.Data.SetEntitySharedData(target, EntityData.PLAYER_MONEY, targetMoney); prizeModel.amount = prize; prizeModel.winner = NAPI.Data.GetEntityData(target, EntityData.PLAYER_SQL_ID); prizeModel.annoucement = contest; prizeModel.journalist = NAPI.Data.GetEntityData(player, EntityData.PLAYER_SQL_ID); prizeModel.given = true; prizeModel.id = Database.GivePrize(prizeModel); annoucementList.Add(prizeModel); // Mandamos el mensaje a los jugadores NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_INFO + playerMessage); NAPI.Chat.SendChatMessageToPlayer(target, Constants.COLOR_INFO + targetMessage); // Logeamos el dinero del premio Database.LogPayment(player.Name, target.Name, "Premio WeazelNews", prize); } else { NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_INFO + Messages.ERR_FACTION_NOT_ENOUGH_MONEY); } } else { NAPI.Chat.SendChatMessageToPlayer(player, Constants.COLOR_ERROR + Messages.ERR_PLAYER_NOT_FOUND); } } }
public void AnnounceCommand(Client player, string message) { if (player.GetSharedData(EntityData.PLAYER_KILLED) != 0) { player.SendChatMessage(Constants.COLOR_ERROR + ErrRes.player_is_dead); } else { int money = player.GetSharedData(EntityData.PLAYER_MONEY); if (money < Constants.PRICE_ANNOUNCEMENT) { player.SendChatMessage(Constants.COLOR_ERROR + ErrRes.player_not_enough_money); } else { AnnoucementModel annoucement = new AnnoucementModel(); { annoucement.winner = player.GetData(EntityData.PLAYER_SQL_ID); annoucement.amount = Constants.PRICE_ANNOUNCEMENT; annoucement.annoucement = message; annoucement.given = false; } // Removes player money player.SetSharedData(EntityData.PLAYER_MONEY, money - Constants.PRICE_ANNOUNCEMENT); SendNewsMessage(player, message); player.SendChatMessage(Constants.COLOR_INFO + InfoRes.announce_published); Task.Factory.StartNew(() => { NAPI.Task.Run(() => { // Log the announcement into the database annoucement.id = Database.SendAnnoucement(annoucement); Database.LogPayment(player.Name, GenRes.faction_news, GenRes.news_announce, Constants.PRICE_ANNOUNCEMENT); }); }); } } }