To make my question specific, what I want to develop is a multi-step game. And the thing I want to realize is, let's say now we have the game taking players A & B included, and both A & B have the freedom to send transactions to the game contract. In some certain round A may send a valid transaction to the contract can make him win, but is there some method we can develop to hold the contract for a while not yielding the final result (A wins) to see whether or not there is another valid transaction coming from another player (B)?
Nothing can occur in the contract unless a transaction triggers the action. To my knowledge there is no conditionally delayed transaction. Someone would need to pay the gas for a delayed transaction.
Player A could initiate a game completion transaction after the wait period had passed. The transaction would check to verify enough time had passed before allowing the game completion. This puts the onus on the player who thinks he or she has won to complete the game, which I assume the winner would want to do.