Skip to content

Commit

Permalink
Version 3.2.0: The Selection Update (#109)
Browse files Browse the repository at this point in the history
This update implements selection based brushing and copy/pasting.

**New Features:**
- Added a new UI option in the Brush section; Brush mode. Use it to toggle between Brush/Selection.
- Added a progress indicator for async brushing/selection filling.
- Added a new configuration setting; Selection Item. Use it to change the item used to select areas for copying and world editing.
  - All shapes may be used inside of selections.

**Changes:**
- Removed legacy cloning; Cloning now must be done through selection. When cloning, the cloned object will be pasted relative to your target block at the moment of cloning.

**Bug Fixes:**
- Errors no longer occur when a player quits without a BlockSniper session.
- Errors no longer occur when trying to use the /clone command.

**Notes:**
- This update adds new translation keys; Please make sure to remove the old language files from `plugin_data/BlockSniper/languages/*`
  • Loading branch information
Sandertv authored Oct 11, 2018
1 parent 00b94a7 commit 194ee1d
Show file tree
Hide file tree
Showing 40 changed files with 745 additions and 758 deletions.
216 changes: 108 additions & 108 deletions plugin.yml
Original file line number Diff line number Diff line change
@@ -1,116 +1,116 @@
{
"name": "BlockSniper",
"version": "3.1.1",
"api": ["3.2.0"],
"author": "BlockHorizons",
"authors": [
"Sandertv (@Sandertv)",
"Chris-Prime (@PrimusLV)"
],
"main": "BlockHorizons\\BlockSniper\\Loader",
"load": "POSTWORLD",
"softdepend": [
"MyPlot"
],
"name": "BlockSniper",
"version": "3.2.0",
"api": ["3.2.0"],
"author": "BlockHorizons",
"authors": [
"Sandertv (@Sandertv)",
"Chris-Prime (@PrimusLV)"
],
"main": "BlockHorizons\\BlockSniper\\Loader",
"load": "POSTWORLD",
"softdepend": [
"MyPlot"
],

"permissions": {
"blocksniper-myplot": {
"default": false,
"description": "Allows bypassing MyPlot plot borders with BlockSniper.",
"children": {
"blocksniper-myplot.bypass": {
"default": false,
"description": "Allows bypassing MyPlot plot protection."
},
"blocksniper-myplot.allow-outside": {
"default": "op",
"description": "Allows using BlockSniper outside of plot worlds limitlessly."
}
"permissions": {
"blocksniper-myplot": {
"default": false,
"description": "Allows bypassing MyPlot plot borders with BlockSniper.",
"children": {
"blocksniper-myplot.bypass": {
"default": false,
"description": "Allows bypassing MyPlot plot protection."
},
"blocksniper-myplot.allow-outside": {
"default": "op",
"description": "Allows using BlockSniper outside of plot worlds limitlessly."
}
}
},
"blocksniper": {
"default": false,
"description": "Allows access to all BlockSniper features.",
"children": {
"blocksniper.configuration": {
"default": "op",
"description": "Allows modifying the configuration in-game."
},
"blocksniper.command": {
"default": false,
"description": "Allows access to all BlockSniper command features.",
"children": {
"blocksniper.command.brush": {
"default": "op",
"description": "Allows access to the brush wand command."
},
"blocksniper.command.undo": {
"default": "op",
"description": "Allows access to the undo command."
},
"blocksniper.command.redo": {
"default": "op",
"description": "Allows access to the redo command."
},
"blocksniper.command.blocksniper": {
"default": "op",
"description": "Allows access to the BlockSniper command."
},
"blocksniper.command.clone": {
"default": "op",
"description": "Allows access to the clone command."
},
"blocksniper.command.paste": {
"default": "op",
"description": "Allows access to the paste command."
},
}
},
"blocksniper.type": {
"default": false,
"description": "Allows access to all BlockSniper types."
},
"blocksniper.shape": {
"default": false,
"description": "Allows access to all BlockSniper shapes."
},
"blocksniper.clone": {
"default": false,
"description": "Allows access to all BlockSniper clone types.",
"children": {
"blocksniper.clone.copy": {
"default": "op",
"description": "Allows access to the copy clone type."
},
"blocksniper.clone.template": {
"default": "op",
"description": "Allows access to the template clone type."
},
"blocksniper.clone.schematic": {
"default": "op",
"description": "Allows access to the schematic clone type."
}
}
},
"blocksniper": {
"default": false,
"description": "Allows access to all BlockSniper features.",
"children": {
"blocksniper.configuration": {
"default": "op",
"description": "Allows modifying the configuration in-game."
},
"blocksniper.command": {
"default": false,
"description": "Allows access to all BlockSniper command features.",
"children": {
"blocksniper.command.brush": {
"default": "op",
"description": "Allows access to the brush wand command."
},
"blocksniper.command.undo": {
"default": "op",
"description": "Allows access to the undo command."
},
"blocksniper.command.redo": {
"default": "op",
"description": "Allows access to the redo command."
},
"blocksniper.command.blocksniper": {
"default": "op",
"description": "Allows access to the BlockSniper command."
},
"blocksniper.command.clone": {
"default": "op",
"description": "Allows access to the clone command."
},
"blocksniper.command.paste": {
"default": "op",
"description": "Allows access to the paste command."
},
}
},
"blocksniper.type": {
"default": false,
"description": "Allows access to all BlockSniper types."
},
"blocksniper.shape": {
"default": false,
"description": "Allows access to all BlockSniper shapes."
},
"blocksniper.clone": {
"default": false,
"description": "Allows access to all BlockSniper clone types.",
"children": {
"blocksniper.clone.copy": {
"default": "op",
"description": "Allows access to the copy clone type."
},
"blocksniper.clone.template": {
"default": "op",
"description": "Allows access to the template clone type."
},
"blocksniper.clone.schematic": {
"default": "op",
"description": "Allows access to the schematic clone type."
}
}
},
"blocksniper.paste": {
"default": false,
"description": "Allows access to all BlockSniper paste types.",
"children": {
"blocksniper.paste.copy": {
"default": "op",
"description": "Allows access to the copy paste type."
},
"blocksniper.paste.template": {
"default": "op",
"description": "Allows access to the template paste type."
},
"blocksniper.paste.schematic": {
"default": "op",
"description": "Allows access to the schematic paste type."
}
}
}
"blocksniper.paste": {
"default": false,
"description": "Allows access to all BlockSniper paste types.",
"children": {
"blocksniper.paste.copy": {
"default": "op",
"description": "Allows access to the copy paste type."
},
"blocksniper.paste.template": {
"default": "op",
"description": "Allows access to the template paste type."
},
"blocksniper.paste.schematic": {
"default": "op",
"description": "Allows access to the schematic paste type."
}
}
}
}
}
}
}
2 changes: 1 addition & 1 deletion resources/languages/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Thank you for your interest in helping translate.
For an example on how to do it, click the English translation. The English messages are the ones to be translated, so keep those next to you.

Please make sure to end every line with a full stop (.), wherever this is the case in the English translation, and if not, don't.
Please make sure to end every line with a full stop (.), wherever this is the case in the English translation, and if not, don't.
Please name the file according to the ISO 639-1 codes, which can be found [here](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes).
<br>
It is known there are duplicated translations, but these are for the sole purpose of easier code completion only. Please do feel free to copy those from earlier translations.
Expand Down
11 changes: 11 additions & 0 deletions resources/languages/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,11 @@
"size": "Brush Size",
"shape": "Brush Shape",
"type": "Brush Type",
"mode": {
"description": "Brush Mode",
"brush": "Brush",
"selection": "Selection"
},
"hollow": "Hollow Brush",
"decrement": "Decrementing Brush",
"height": "Brush Height",
Expand All @@ -138,6 +143,7 @@
"auto-update": "Automatically update the configuration file when a new version is found",
"language": "Language used for sending BlockSniper related messages",
"brush-item": "Item ID of the item that is used to brush",
"selection-item": "Item ID of the item that is used to select",
"max-brush-size": "The absolute maximum size of brush",
"min-async-size": "Asynchronous brush size limit. If brush size is bigger than this, operations get executed asynchronously",
"max-reverts": "Maximum amount of Undo/Redo stores to save. Older ones get cleaned automatically",
Expand Down Expand Up @@ -179,6 +185,11 @@
}
},
"brush": {
"selection": {
"first": "Position 1 set to:",
"second": "Position 2 set to:",
"error": "Set your selection using the selection item before doing this action."
},
"shape": {
"cube": "Cube",
"cuboid": "Cuboid",
Expand Down
11 changes: 11 additions & 0 deletions resources/languages/fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,11 @@
"size": "Taille du pinceau",
"shape": "Forme du pinceau",
"type": "Type de pinceau",
"mode": {
"description": "Brush Mode",
"brush": "Brush",
"selection": "Selection"
},
"hollow": "Pinceau creuse",
"decrement": "Décrémenter le pinceau",
"height": "Hauteur du pinceau",
Expand All @@ -138,6 +143,7 @@
"auto-update": "Mettre à jour automatiquement le fichier de configuration quand une nouvelle version est trouvée",
"language": "Language utilisé pour envoyer des messages liés à BlockSniper",
"brush-item": "ID de l'élément utilisé pour peindre",
"selection-item": "Item ID of the item that is used to select",
"max-brush-size": "La taille maximale absolue du pinceau",
"min-async-size": "Limite asynchrone de la taille du pinceau. Si la taille du pinceau est plus grande, les opérations sont exécutées de façon asynchrone",
"max-reverts": "Nombre maximum d'action annuler/relancer sauvegarder. Les plus anciens sont nettoyés automatiquement",
Expand Down Expand Up @@ -179,6 +185,11 @@
}
},
"brush": {
"selection": {
"first": "Position 1 set to:",
"second": "Position 2 set to:",
"error": "Set your selection using the selection item before doing this action."
},
"shape": {
"cube": "Cube",
"cuboid": "Cuboid",
Expand Down
11 changes: 11 additions & 0 deletions resources/languages/ja.json
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,11 @@
"size": "大きさ",
"shape": "",
"type": "種類",
"mode": {
"description": "Brush Mode",
"brush": "Brush",
"selection": "Selection"
},
"hollow": "空洞",
"decrement": "デクリメント",
"height": "高さ",
Expand All @@ -137,6 +142,7 @@
"auto-update": "新しいバージョンが見つかったときに設定ファイルを自動的に更新する",
"language": "BlockSniperのメッセージ送信に使用する言語",
"brush-item": "ブラシに使用するアイテムのID",
"selection-item": "Item ID of the item that is used to select",
"max-brush-size": "ブラシの最大サイズ",
"min-async-size": "非同期ブラシサイズの制限。ブラシのサイズがこれより大きい場合、操作は非同期に実行されます。",
"max-reverts": "やり直しの保存の最大量。古いものは自動的に削除されます。",
Expand Down Expand Up @@ -178,6 +184,11 @@
}
},
"brush": {
"selection": {
"first": "Position 1 set to:",
"second": "Position 2 set to:",
"error": "Set your selection using the selection item before doing this action."
},
"shape": {
"cube": "立方体",
"cuboid": "直方体",
Expand Down
11 changes: 11 additions & 0 deletions resources/languages/ko.json
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,11 @@
"size": "브러시 크기",
"shape": "브러시 도형",
"type": "브러시 종류",
"mode": {
"description": "Brush Mode",
"brush": "Brush",
"selection": "Selection"
},
"hollow": "빈 브러시",
"decrement": "감소 브러시",
"height": "브러시 높이",
Expand All @@ -138,6 +143,7 @@
"auto-update": "새로운 버전을 찾았을 때 자동으로 구성 파일 업데이트",
"language": "BlockSniper 관련 메시지를 보내는 데 사용되는 언어",
"brush-item": "브러시에 사용되는 아이템의 ID",
"selection-item": "Item ID of the item that is used to select",
"max-brush-size": "브러시의 절대적 최대 크기",
"min-async-size": "비동기 브러시 크기 제한입니다. 브러시 크기가 이보다 크다면, 작업이 비동기적으로 실행됩니다",
"max-reverts": "저장할 실행 취소/다시 실행 보관의 최대량입니다. 이전 것들은 자동으로 비워집니다",
Expand Down Expand Up @@ -179,6 +185,11 @@
}
},
"brush": {
"selection": {
"first": "Position 1 set to:",
"second": "Position 2 set to:",
"error": "Set your selection using the selection item before doing this action."
},
"shape": {
"cube": "정육면체",
"cuboid": "직육면체",
Expand Down
11 changes: 11 additions & 0 deletions resources/languages/nl.json
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,11 @@
"size": "Verf Grootte",
"shape": "Verf Vorm",
"type": "Verf Type",
"mode": {
"description": "Brush Mode",
"brush": "Brush",
"selection": "Selection"
},
"hollow": "Holle Verf",
"decrement": "Verkleinende Verf",
"height": "Verf Hoogte",
Expand All @@ -138,6 +143,7 @@
"auto-update": "Update automatisch als een nieuwe update wordt gevonden",
"language": "Taal waarin BlockSniper berichten worden weergeven",
"brush-item": "ID van het voorwerp waarmee er wordt geverft",
"selection-item": "ID van het voorwerp waarmee een selectie wordt gemaakt",
"max-brush-size": "De absolute maximale verf grootte",
"min-async-size": "Asynchrone verf limiet. Als de verf grootte groter is dan dit, worden operaties asynchroon gedaan",
"max-reverts": "De maximale hoeveelheid van ongedaanmakingen. Oudere ongedaanmakingen worden vanzelf verwijderd",
Expand Down Expand Up @@ -179,6 +185,11 @@
}
},
"brush": {
"selection": {
"first": "Positie 1 gezet naar:",
"second": "Positie 2 gezet naar:",
"error": "Set your selection using the selection item before doing this action."
},
"shape": {
"cube": "Kubus",
"cuboid": "Balk",
Expand Down
Loading

0 comments on commit 194ee1d

Please sign in to comment.