mcdevs-wiki-extractor 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,68 +1,74 @@
1
- var WikiTextParser = require('parse-wikitext');
2
- var fs = require('fs');
1
+ const WikiTextParser = require('parse-wikitext')
2
+ const fs = require('fs')
3
3
 
4
- var wikiTextParser = new WikiTextParser('wiki.vg');
4
+ const wikiTextParser = new WikiTextParser('wiki.vg')
5
5
 
6
- module.exports={writeAllEntities:writeAllEntities,getEntities:getEntities};
6
+ module.exports = { writeAllEntities: writeAllEntities, getEntities: getEntities }
7
7
 
8
- var table_parser=require("./common/table_parser");
8
+ const tableParser = require('./common/table_parser')
9
9
 
10
- function getEntities(date,cb)
11
- {
12
- wikiTextParser.getFixedArticle("Entities",date,function(err,pageData,title){
13
- var sectionObject=wikiTextParser.pageToSectionObject(pageData);
14
- var mobs=sectionObject["Mobs"].content;
15
- var objects=sectionObject["Objects"].content;
10
+ function getEntities (date, cb) {
11
+ wikiTextParser.getFixedArticle('Entity_metadata', date, function (err, pageData, title) {
12
+ if (err) {
13
+ cb(err)
14
+ return
15
+ }
16
+ const sectionObject = wikiTextParser.pageToSectionObject(pageData)
17
+ const mobs = sectionObject.Mobs.content
18
+ const objects = sectionObject.Objects.content
16
19
 
17
- var parsed_mobs=table_parser.parseWikiTable(table_parser.getFirstTable(mobs));
18
- var parsed_objects=table_parser.parseWikiTable(table_parser.getFirstTable(objects));
20
+ let parsedMobs = tableParser.parseWikiTable(tableParser.getFirstTable(mobs))
21
+ let parsedObjects = tableParser.parseWikiTable(tableParser.getFirstTable(objects))
19
22
 
20
- function transformSize(size) {
21
- if(size == 'N/A')
22
- return null;
23
- var r;
24
- if(r=size.match(/^(.+?) \* size/))
25
- {
26
- return parseFloat(r[1]);
23
+ function transformSize (size) {
24
+ if (size === 'N/A') { return null }
25
+ let r = size.match(/^(.+?) \* size/)
26
+ if (r) {
27
+ return parseFloat(r[1])
27
28
  }
28
- if(r=size.match(/^(.+?) \* (.+?)/))
29
- {
30
- return parseFloat(r[1])*parseFloat(r[2]);
29
+ r = size.match(/^(.+?) \* (.+?)/)
30
+ if (r) {
31
+ return parseFloat(r[1]) * parseFloat(r[2])
31
32
  }
32
- return parseFloat(size);
33
+ return parseFloat(size)
33
34
  }
34
35
 
35
- parsed_mobs=parsed_mobs.map(function(val){
36
+ parsedMobs = parsedMobs.map(function (val) {
36
37
  return {
37
- id:parseInt(val["Type"]),
38
- displayName:val["Name"],
39
- width:transformSize(val["x, z"]),
40
- height:transformSize(val["y"]),
41
- type:"mob",
42
- stringId:val["ID"] ? val["ID"].replace(/<code>(.+)<\/code>/,"$1") : undefined
38
+ id: parseInt(val.Type),
39
+ internalId: parseInt(val.Type),
40
+ name: val.ID ? val.ID.replace(/<code>(.+)<\/code>/, '$1').replace(/minecraft:/g, '') : undefined,
41
+ displayName: val.Name,
42
+ width: transformSize(val['bounding box x and z']),
43
+ height: transformSize(val['bounding box y']),
44
+ type: 'mob'
43
45
  }
44
- });
46
+ })
45
47
 
46
- parsed_objects=parsed_objects.map(function(val){
48
+ parsedObjects = parsedObjects.map(function (val) {
47
49
  return {
48
- id:parseInt(val["ID"]),
49
- displayName:val["Name"],
50
- width:transformSize(val["x, z"]),
51
- height:transformSize(val["y"]),
52
- type:"object"
50
+ id: parseInt(val.ID),
51
+ internalId: parseInt(val.ID),
52
+ name: val.Name.replace(/\(.+?\)/, '').trim().replace(/ /, '_').toLowerCase(),
53
+ displayName: val.Name,
54
+ width: transformSize(val['bounding box x and z']),
55
+ height: transformSize(val['bounding box y']),
56
+ type: 'object'
53
57
  }
54
- });
55
-
56
- var entities=parsed_mobs.concat(parsed_objects);
58
+ })
57
59
 
60
+ const entities = parsedMobs.concat(parsedObjects)
58
61
 
59
- cb(null,entities);
60
- });
62
+ cb(null, entities)
63
+ })
61
64
  }
62
65
 
63
- function writeAllEntities(file,date, cb)
64
- {
65
- getEntities(date,function(err,entities){
66
- fs.writeFile(file, JSON.stringify(entities,null,2), cb);
67
- });
66
+ function writeAllEntities (file, date, cb) {
67
+ getEntities(date, function (err, entities) {
68
+ if (err) {
69
+ cb(err)
70
+ return
71
+ }
72
+ fs.writeFile(file, JSON.stringify(entities, null, 2), cb)
73
+ })
68
74
  }