event.load("player_join"); event.load("player_quit"); databank.workerExecute(databank.prepare(" CREATE TABLE IF NOT EXISTS playtime ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, player_id INT NOT NULL, join_time BIGINT NOT NULL, leave_time BIGINT ); ")); msg.string("dev", "§bPlaytime §rloaded."); @wait wait(); player_id = player.getId(player); ignoreGoto(event); goto("wait"); @player_join deleteInvalidStatement = databank.prepare("DELETE FROM playtime WHERE player_id = ? AND leave_time IS NULL;", false); databank.setInt(deleteInvalidStatement, 1, player_id); databank.workerExecute(deleteInvalidStatement); joinTimeStatement = databank.prepare("INSERT INTO playtime (player_id, join_time) VALUES (?, ?);", false); databank.setInt(joinTimeStatement, 1, player_id); databank.setLong(joinTimeStatement, 2, time.getMillis()); databank.workerExecute(joinTimeStatement); goto("wait"); @player_quit leaveTimeStatement = databank.prepare("UPDATE playtime SET leave_time = ? WHERE player_id = ? AND leave_time IS NULL;", false); databank.setLong(leaveTimeStatement, 1, time.getMillis()); databank.setInt(leaveTimeStatement, 2, player_id); databank.workerExecute(leaveTimeStatement); goto("wait");