Comments (2)
Now that taking a look at your solution, even though my solution worked, it was not safe for other reasons, and yours is much better, thanks! xd
Also, as a newbie programmer "catching" this issue was a long and painful process for me, believe me xd i thought about abandoning my project even. I trusted you more than myself, thought that i was using it wrong rather than it being wrong.
Anyways, thanks a lot. This is a very nice package/library or whatever its called. Have a nice one <3
from react-chessboard.
You raise a very good point, this was written back when I had less of an idea about state update rules and I hadn't thought to look back at it, so good catch.
The good news is that there is a simple solution, which I think maybe is the one you've done but I'm not sure from the description.
The solution is actually already implemented in another example, so I must have found this issue at some point but not updated other examples:
function onDrop(sourceSquare, targetSquare) {
const gameCopy = { ...game };
const move = gameCopy.move({
from: sourceSquare,
to: targetSquare,
promotion: 'q' // always promote to a queen for example simplicity
});
setGame(gameCopy);
// illegal move
if (move === null) return false;
// store timeout so it can be cleared on undo/reset so computer doesn't execute move
const newTimeout = setTimeout(makeRandomMove, 200);
setCurrentTimeout(newTimeout);
return true;
}
from react-chessboard.
Related Issues (20)
- Redux Issue . Next JS 13 HOT 6
- Laggy when render multiple boards HOT 1
- Is it possible to disable field labels? HOT 2
- Positioning a shape while dragging HOT 21
- Animation looks weird when position and boardOrientation are changed at the same time HOT 6
- Animation goes wrong way when board is flipped HOT 2
- How can I make one black pawn a star, another black pawn, for example, an ice cream, replace not all pawns at once, but only one ? HOT 1
- areArrowsAllowed={false} doesn't work HOT 3
- onPromotionCheck for squareClick HOT 4
- Animation skips after failed drag move HOT 1
- How i can add pieces from outside the board ? HOT 2
- Feature Request: Add Circle Annotations to Squares HOT 3
- Positioning issue if FEN string changes completely HOT 7
- Premove back to existing premove square causes piece to disappear HOT 5
- Board resets to previous state despite value of `position` HOT 8
- Got error when run in dev environment HOT 2
- showPromotionDialog prop not working as expected HOT 1
- Use mixins in contrast to inline css HOT 1
- Allow for customization of every unique piece not just the different colored pieces. HOT 3
- customArrows props creates infinite loops. HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-chessboard.