This is a great explanation, thanks a lot. but i have a question.
I want to send 5000 Tokens for 1 ETH and for that reason I added that line: "unitsOneEthCanBuy = 5000".
But my problem is i have complately forgot about decimals! My decimal is 18 so i think i should have write 50 instead of 5000.
Does anyone know how to fix it? i have already deployed, verified and published my smart contract.