so://phie

poppy

A feature-rich Minecraft plugin which enhances gaming experience
git clone git://soophie.de/poppy

blob: 11fc3a5f22086fc24cc01c98bc32e18cb1463d41 (2073 bytes)[doc][blame][raw]

1package poppy;

2

3import java.io.File;

4import java.io.IOException;

5import java.util.List;

6import java.util.ArrayList;

7

8import org.bukkit.configuration.file.FileConfiguration;

9import org.bukkit.configuration.file.YamlConfiguration;

10import org.bukkit.entity.Player;

11import org.bukkit.Location;

12

13import poppy.Utils;

14

15public class Config

16{

17 private File file;

18 private FileConfiguration configuration;

19

20 public Config(final String path)

21 {

22 this.file = new File(path);

23 this.configuration = YamlConfiguration.loadConfiguration(this.file);

24 }

25

26 public void setHome(final Player player) throws IOException

27 {

28 final String path = "home." + player.getDisplayName();

29 final Location location = Utils.calcBlockCenter(player.getLocation());

30

31 this.configuration.set(path, location);

32 this.configuration.save(this.file);

33 }

34

35 public Location getHome(final Player player)

36 {

37 final String path = "home." + player.getDisplayName();

38

39 return this.configuration.getLocation(path);

40 }

41

42 public boolean setWarp(final String name, final Location location) throws IOException

43 {

44 final String path = "warp." + name;

45

46 if(this.configuration.getLocation(path) != null)

47 {

48 return false;

49 }

50

51 this.configuration.set(path, Utils.calcBlockCenter(location));

52 this.configuration.save(this.file);

53

54 return true;

55 }

56

57 public Location getWarp(final String name)

58 {

59 final String path = "warp." + name;

60

61 return this.configuration.getLocation(path);

62 }

63

64 public List<String> getInfoPages()

65 {

66 final String path = "info";

67 List<String> pages = null;

68

69 try

70 {

71 this.configuration.load(this.file);

72 pages = (List<String>) this.configuration.getList(path);

73 }

74 catch(Exception ex)

75 {

76 // ignore

77 }

78

79 if(pages == null)

80 {

81 pages = new ArrayList<>();

82 }

83

84 return pages;

85 }

86}