1
Fork 0
mirror of https://github.com/Quackster/Havana.git synced 2025-07-03 05:07:46 +00:00

Merge pull request #29 from Quackster/develop

merge from develop branch
This commit is contained in:
Quackster 2023-01-16 08:37:57 +10:00 committed by GitHub
commit a0ca83c1c1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 21 additions and 11 deletions

View file

@ -580,7 +580,7 @@ public class ItemDao {
try { try {
sqlConnection = Storage.getStorage().getConnection(); sqlConnection = Storage.getStorage().getConnection();
preparedStatement = Storage.getStorage().prepare("DELETE items WHERE is_hidden = 0 AND is_trading = 0 AND room_id = 0 AND user_id = ?", sqlConnection); preparedStatement = Storage.getStorage().prepare("DELETE FROM items WHERE is_hidden = 0 AND is_trading = 0 AND room_id = 0 AND user_id = ?", sqlConnection);
preparedStatement.setInt(1, userId); preparedStatement.setInt(1, userId);
preparedStatement.execute(); preparedStatement.execute();

View file

@ -538,4 +538,8 @@ public class PlayerDetails {
public String getPreviousRespectDay() { public String getPreviousRespectDay() {
return previousRespectDay; return previousRespectDay;
} }
public String getIpAddress() {
return PlayerDao.getLatestIp(this.getId());
}
} }

View file

@ -150,8 +150,8 @@ public class RoomTradeManager {
* @param tradeBanned the person that is trade banned. * @param tradeBanned the person that is trade banned.
*/ */
public static void addTradeBan(Player tradeBanned) { public static void addTradeBan(Player tradeBanned) {
tradeBanned.send(new ALERT("You have been trade banned for 7 days for suspicious activity. Do not give credits to other users.<br>Read for more info: https://classichabbo.com/articles/22-trade-banned")); tradeBanned.send(new ALERT("You have been trade banned for 5 days for suspicious activity. Do not give credits to other users."));
tradeBanned.getDetails().setTradeBanExpiration(DateUtil.getCurrentTimeSeconds() + TimeUnit.DAYS.toSeconds(7)); tradeBanned.getDetails().setTradeBanExpiration(DateUtil.getCurrentTimeSeconds() + TimeUnit.DAYS.toSeconds(5));
ItemDao.saveTradeBanExpire(tradeBanned.getDetails().getId(), tradeBanned.getDetails().getTradeBanExpiration()); ItemDao.saveTradeBanExpire(tradeBanned.getDetails().getId(), tradeBanned.getDetails().getTradeBanExpiration());
} }

View file

@ -147,13 +147,14 @@ public class GRPC implements MessageEvent {
return; return;
} }
//if (item.getDefinition().hasBehaviour(ItemBehaviour.REDEEMABLE)) { if (item.getDefinition().hasBehaviour(ItemBehaviour.REDEEMABLE)) {
if (!player.hasFuse(Fuseright.MUTE) if (!player.hasFuse(Fuseright.MUTE)
&& giftedUserDetails.getId() != player.getDetails().getId()) { && giftedUserDetails.getId() != player.getDetails().getId()
&& giftedUserDetails.getIpAddress().equals(player.getDetails().getIpAddress())) {
RoomTradeManager.addTradeBan(player); RoomTradeManager.addTradeBan(player);
return; return;
} }
//} }
} }
String presentNote = reader.readString(); String presentNote = reader.readString();

View file

@ -4,8 +4,10 @@ import org.alexdev.havana.dao.mysql.ItemDao;
import org.alexdev.havana.dao.mysql.TransactionDao; import org.alexdev.havana.dao.mysql.TransactionDao;
import org.alexdev.havana.game.fuserights.Fuseright; import org.alexdev.havana.game.fuserights.Fuseright;
import org.alexdev.havana.game.item.Item; import org.alexdev.havana.game.item.Item;
import org.alexdev.havana.game.item.ItemManager;
import org.alexdev.havana.game.item.base.ItemBehaviour; import org.alexdev.havana.game.item.base.ItemBehaviour;
import org.alexdev.havana.game.player.Player; import org.alexdev.havana.game.player.Player;
import org.alexdev.havana.game.player.PlayerDetails;
import org.alexdev.havana.game.player.PlayerManager; import org.alexdev.havana.game.player.PlayerManager;
import org.alexdev.havana.game.room.Room; import org.alexdev.havana.game.room.Room;
import org.alexdev.havana.game.room.managers.RoomTradeManager; import org.alexdev.havana.game.room.managers.RoomTradeManager;
@ -64,14 +66,17 @@ public class PLACESTUFF implements MessageEvent {
} }
} }
PlayerDetails ownerDetails = PlayerManager.getInstance().getPlayerData(room.getData().getOwnerId());
// Giving credits to self on same IP is suspicious behaviour // Giving credits to self on same IP is suspicious behaviour
//if (item.hasBehaviour(ItemBehaviour.REDEEMABLE) || ItemManager.getInstance().hasPresentBehaviour(item, ItemBehaviour.REDEEMABLE)) { if (item.hasBehaviour(ItemBehaviour.REDEEMABLE) || ItemManager.getInstance().hasPresentBehaviour(item, ItemBehaviour.REDEEMABLE)) {
if (!player.hasFuse(Fuseright.MUTE) if (!player.hasFuse(Fuseright.MUTE)
&& room.getData().getOwnerId() != player.getDetails().getId()) { && room.getData().getOwnerId() != player.getDetails().getId()
&& player.getDetails().getIpAddress().equals(ownerDetails.getIpAddress())) {
RoomTradeManager.addTradeBan(player); RoomTradeManager.addTradeBan(player);
return; return;
} }
//} }
var ownerData = PlayerManager.getInstance().getPlayerData(room.getData().getOwnerId()); var ownerData = PlayerManager.getInstance().getPlayerData(room.getData().getOwnerId());

View file

@ -6,7 +6,7 @@
<li id="guestbook-entry-{{ entry.getId() }}" class="guestbook-entry"> <li id="guestbook-entry-{{ entry.getId() }}" class="guestbook-entry">
<div class="guestbook-author"> <div class="guestbook-author">
<img src="{{ site.sitePath }}/habbo-imaging/avatarimage?figure={{ entry.getUser().getFigure() }}&size=s&direction=4&head_direction=4&crr=0&gesture=&frame=1" alt="Alex" title="Alex"/> <img src="{{ site.sitePath }}/habbo-imaging/avatarimage?figure={{ entry.getUser().getFigure() }}&size=s&direction=4&head_direction=4&crr=0&gesture=&frame=1" alt="{{ entry.getUser().getName() }}" title="{{ entry.getUser().getName() }}"/>
</div> </div>
{% if hasDeletePermission %} {% if hasDeletePermission %}
<div class="guestbook-actions"> <div class="guestbook-actions">
@ -26,4 +26,4 @@
</div> </div>
<div class="guestbook-cleaner">&nbsp;</div> <div class="guestbook-cleaner">&nbsp;</div>
<div class="guestbook-entry-footer metadata">{{ entry.getCreationDate() }}</div> <div class="guestbook-entry-footer metadata">{{ entry.getCreationDate() }}</div>
</li> </li>