| | |
| | | const [form] = Form.useForm(); |
| | | |
| | | const [childrenDrawer, setChildrenDrawer] = useState(false); |
| | | const [lastCopiedSprites, setLastCopiedSprites] = useState([]); |
| | | |
| | | useEffect(() => { |
| | | |
| | |
| | | if (!curSprite) { |
| | | return; |
| | | } |
| | | setLastCopiedSprites([]); |
| | | for (let i = 0; i < values.copyCount; i++) { |
| | | const copiedSprite = Utils.copySprite(curSprite); |
| | | switch (values.copyDire) { |
| | |
| | | default: |
| | | break; |
| | | } |
| | | Utils.getMapContainer().addChild(copiedSprite) |
| | | Utils.getMapContainer().addChild(copiedSprite); |
| | | Utils.beSettings(copiedSprite, props.setSpriteBySettings, props.setDidClickSprite); |
| | | |
| | | setLastCopiedSprites(prevArr => [...prevArr, copiedSprite]); |
| | | } |
| | | setChildrenDrawer(false); |
| | | } |
| | |
| | | }} |
| | | /> |
| | | </Form.Item> |
| | | <Form.Item> |
| | | <Button |
| | | onClick={() => { |
| | | if (lastCopiedSprites) { |
| | | lastCopiedSprites.forEach(copiedSprite => { |
| | | Utils.getMapContainer().removeChild(copiedSprite); |
| | | }) |
| | | setLastCopiedSprites([]); |
| | | } |
| | | }} |
| | | > |
| | | <FormattedMessage id='common.undo' defaultMessage='撤销上次复制' /> |
| | | </Button> |
| | | </Form.Item> |
| | | </Space.Compact> |
| | | </Form.Item> |
| | | </Col> |