Create 27 vault slots by default

This commit is contained in:
Trever Fischer
2012-11-17 16:05:42 -05:00
parent 43c249ce9f
commit 0060443619
2 changed files with 25 additions and 12 deletions

View File

@@ -199,6 +199,8 @@ CAMINUS_BEANSTALKD_PORT = 11300
CAMINUS_BOUNTY_PRICE=250
CAMINUS_VAULT_SLOTS = 27
# Load any site-local overrides, such as camin.us' database settings, etc
try:
from local_settings import *

View File

@@ -34,18 +34,29 @@ def send_vault_delete(sender, instance, *args, **kwargs):
slots))
def send_vault_update(sender, instance, created, *args, **kwargs):
if created and instance.quantity == -1:
return
slots = [
{
'item': instance.item,
'quantity': instance.quantity,
'damage': instance.damage,
'data': instance.data,
'position': instance.position
}
]
broadcast_server_event(VaultContentsEvent(instance.player.mc_username, slots))
if created and instance.item:
slots = [
{
'item': instance.item.material,
'quantity': instance.quantity,
'damage': instance.item.damage,
'data': instance.item.data,
'position': instance.position
}
]
broadcast_server_event(VaultContentsEvent(instance.player.mc_username, slots))
post_save.connect(send_vault_update, sender=VaultSlot, dispatch_uid='derp')
post_delete.connect(send_vault_delete, sender=VaultSlot, dispatch_uid='derp')
def create_initial_slots(sender, instance, created, *args, **kwargs):
slots = instance.vault_slots.all()
if len(slots) < settings.CAMINUS_VAULT_SLOTS:
neededPositions = range(0, settings.CAMINUS_VAULT_SLOTS)
for s in slots:
neededPositions.remove(s.position)
for pos in neededPositions:
VaultSlot.objects.create(player=instance, position=pos)
post_save.connect(create_initial_slots, sender=MinecraftProfile)