Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DELIMITER ;
- DROP TRIGGER IF EXISTS bliss_3903.`update_owner`;
- DELIMITER //
- CREATE TRIGGER bliss_3903.`update_owner`
- AFTER INSERT ON bliss_3903.Character_DATA
- FOR EACH ROW
- BEGIN
- UPDATE bliss_3903.Object_DATA SET CharacterID = NEW.CharacterID WHERE CharacterID IN
- (SELECT CharacterID FROM Character_DATA WHERE PlayerUID = NEW.PlayerUID)
- AND NOT (Classname LIKE '%door%' OR Classname LIKE '%vault%' OR Classname LIKE '%box%');
- END//
- DELIMITER ;
- DROP EVENT IF EXISTS removeDeadPlayers;
- CREATE EVENT removeDeadPlayers
- ON SCHEDULE EVERY 1 DAY
- COMMENT 'Remove Dead Players from database'
- DO
- DELETE FROM `Character_DATA`
- WHERE `Alive` = 0
- AND `LastLogin` <= date_sub(CURRENT_TIMESTAMP, INTERVAL 1 DAY)
- ;
- DROP EVENT IF EXISTS preventCleanup;
- CREATE EVENT preventCleanup
- ON SCHEDULE EVERY 6 HOUR
- COMMENT 'prevents cleanup of objects build by active player by setting the timestamp to currect'
- DO
- UPDATE `Object_DATA`
- SET `Datestamp` = NOW()
- WHERE `ObjectUID` <> 0
- AND `CharacterID` <> 0
- AND EXISTS (SELECT 1
- FROM `Character_DATA` c
- WHERE c.PlayerUID = (SELECT p.PlayerUID
- FROM `Player_DATA` p,
- `Character_DATA` c2
- WHERE p.PlayerUID = c2.PlayerUID
- AND c2.CharacterID = Object_DATA.CharacterID)
- AND c.Alive = 1
- AND c.LastLogin > NOW() - INTERVAL 1 WEEK)
- ;
- DROP EVENT IF EXISTS removeObjectOld;
- CREATE EVENT removeObjectOld
- ON SCHEDULE EVERY 1 DAY
- COMMENT 'Removes old objects and vehicles'
- DO
- DELETE FROM `Object_DATA` WHERE `Datestamp` < DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 8 DAY AND NOT (Classname LIKE '%door%' OR Classname LIKE '%vault%' OR Classname LIKE '%box%')
- ;
- DROP EVENT IF EXISTS updateStockDaily;
- CREATE EVENT updateStockDaily
- ON SCHEDULE EVERY 1 HOUR
- COMMENT 'Updates out of stock vendors'
- DO
- UPDATE `Traders_DATA` SET qty=250 WHERE qty<250;
- ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement