Newbie here, making my first steps in the smart contracts/dapps world; let's assume a simple scenario, 2 people making a wager on a game outcome. They agree on the amount waged, and who ever wins is automatically credited with the waged amount. How would one go and "lock" in place the waged amount from the 2 wallets? Or what other means of reserving that amount can be employed in a smart contract? I'm particularly interested in the core logic, not necessarily the code for it.