2016-11-11 16:36:38 +00:00
CREATE TABLE IF NOT EXISTS ` fso_lots ` (
2016-07-07 17:38:23 +01:00
` lot_id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` shard_id ` int ( 11 ) NOT NULL ,
` name ` varchar ( 50 ) NOT NULL ,
` description ` varchar ( 500 ) NOT NULL ,
` owner_id ` int ( 10 ) unsigned NOT NULL ,
` location ` int ( 10 ) unsigned zerofill NOT NULL ,
` neighborhood_id ` int ( 11 ) DEFAULT NULL ,
` created_date ` int ( 10 ) unsigned NOT NULL ,
2016-11-11 16:36:38 +00:00
` category_change_date ` int ( 11 ) unsigned NOT NULL ,
2016-07-07 17:38:23 +01:00
` category ` enum ( ' none ' , ' welcome ' , ' money ' , ' skills ' , ' services ' , ' entertainment ' , ' romance ' , ' shopping ' , ' games ' , ' offbeat ' , ' residence ' ) NOT NULL ,
` buildable_area ` int ( 10 ) unsigned NOT NULL ,
` ring_backup_num ` tinyint ( 4 ) NOT NULL DEFAULT ' -1 ' ,
` admit_mode ` tinyint ( 3 ) unsigned NOT NULL DEFAULT ' 0 ' ,
2016-11-11 16:36:38 +00:00
` move_flags ` tinyint ( 3 ) DEFAULT ' 1 ' ,
2016-07-07 17:38:23 +01:00
PRIMARY KEY ( ` lot_id ` ) ,
UNIQUE KEY ` shard_id_name ` ( ` shard_id ` , ` name ` ) ,
UNIQUE KEY ` shard_id_location ` ( ` shard_id ` , ` location ` ) ,
2016-11-11 16:36:38 +00:00
UNIQUE KEY ` location_UNIQUE ` ( ` location ` ) ,
2016-07-07 17:38:23 +01:00
CONSTRAINT ` FK_fso_lots_fso_shards ` FOREIGN KEY ( ` shard_id ` ) REFERENCES ` fso_shards ` ( ` shard_id ` )
)
2015-11-01 15:57:27 +00:00
COLLATE = ' utf8_general_ci '
ENGINE = InnoDB ;
2016-11-11 16:36:38 +00:00
CREATE TABLE IF NOT EXISTS ` fso_roommates ` (
` avatar_id ` int ( 10 ) unsigned NOT NULL ,
` lot_id ` int ( 11 ) NOT NULL ,
` permissions_level ` tinyint ( 3 ) unsigned NOT NULL ,
` is_pending ` tinyint ( 3 ) unsigned NOT NULL ,
PRIMARY KEY ( ` avatar_id ` , ` lot_id ` ) ,
KEY ` FK_roommate_lots_idx ` ( ` lot_id ` ) ,
CONSTRAINT ` FK_roommate_avatars ` FOREIGN KEY ( ` avatar_id ` ) REFERENCES ` fso_avatars ` ( ` avatar_id ` ) ON DELETE CASCADE ON UPDATE CASCADE ,
CONSTRAINT ` FK_roommate_lots ` FOREIGN KEY ( ` lot_id ` ) REFERENCES ` fso_lots ` ( ` lot_id ` ) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB DEFAULT CHARSET = utf8 ;
2015-11-22 17:14:57 +00:00
2016-11-11 16:36:38 +00:00
CREATE TABLE IF NOT EXISTS ` fso_lot_claims ` (
` claim_id ` int ( 11 ) unsigned NOT NULL AUTO_INCREMENT ,
` shard_id ` int ( 11 ) NOT NULL ,
` lot_id ` int ( 10 ) NOT NULL ,
` owner ` varchar ( 50 ) NOT NULL ,
PRIMARY KEY ( ` claim_id ` ) ,
UNIQUE KEY ` shard_id_lot_id ` ( ` shard_id ` , ` lot_id ` )
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COMMENT = ' Represents a lot servers claim on a lot. ' ;
2015-11-22 17:14:57 +00:00
2016-11-11 16:36:38 +00:00
CREATE TABLE IF NOT EXISTS ` fso_lot_server_tickets ` (
2016-07-07 17:38:23 +01:00
` ticket_id ` varchar ( 36 ) NOT NULL ,
` user_id ` int ( 10 ) unsigned NOT NULL ,
` date ` int ( 10 ) unsigned NOT NULL ,
` ip ` varchar ( 50 ) NOT NULL ,
` avatar_id ` int ( 10 ) unsigned NOT NULL ,
2016-11-11 16:36:38 +00:00
` lot_id ` int ( 10 ) NOT NULL COMMENT ' Note: need not necessarily be a real lot! Tickets can be granted for runtime lots, such as job lots. These are marked with the bit flag 0x40000000. ' ,
2016-07-07 17:38:23 +01:00
` avatar_claim_id ` int ( 11 ) NOT NULL ,
` avatar_claim_owner ` varchar ( 50 ) NOT NULL ,
2016-11-11 16:36:38 +00:00
` lot_owner ` varchar ( 50 ) NOT NULL ,
2016-07-07 17:38:23 +01:00
PRIMARY KEY ( ` ticket_id ` ) ,
KEY ` FK_fso_lot_server_tickets_fso_avatar_claims ` ( ` avatar_claim_id ` ) ,
2016-11-11 16:36:38 +00:00
CONSTRAINT ` FK_fso_lot_server_tickets_fso_avatar_claims ` FOREIGN KEY ( ` avatar_claim_id ` ) REFERENCES ` fso_avatar_claims ` ( ` avatar_claim_id ` ) ON DELETE CASCADE
2015-11-22 17:14:57 +00:00
)
COLLATE = ' utf8_general_ci '
2016-07-07 17:38:23 +01:00
ENGINE = InnoDB ;
2016-11-11 16:36:38 +00:00
CREATE TABLE IF NOT EXISTS ` fso_lot_admit ` (
2016-07-07 17:38:23 +01:00
` lot_id ` int ( 11 ) NOT NULL ,
` avatar_id ` int ( 10 ) unsigned NOT NULL ,
` admit_type ` tinyint ( 3 ) unsigned NOT NULL ,
PRIMARY KEY ( ` avatar_id ` , ` lot_id ` ) ,
KEY ` FK_lot_idx ` ( ` lot_id ` ) ,
KEY ` FK_avatar_idx ` ( ` avatar_id ` ) ,
CONSTRAINT ` FK_admit_avatar ` FOREIGN KEY ( ` avatar_id ` ) REFERENCES ` fso_avatars ` ( ` avatar_id ` ) ON DELETE CASCADE ON UPDATE CASCADE ,
CONSTRAINT ` FK_admit_lot ` FOREIGN KEY ( ` lot_id ` ) REFERENCES ` fso_lots ` ( ` lot_id ` ) ON DELETE CASCADE ON UPDATE CASCADE
)
COLLATE = ' utf8_general_ci '
ENGINE = InnoDB ;