Derivatives - Level II N(d1) and N(d2)

Hello, I have a question regarding the e^(r) factor we usually see. In a reading, I have seen we could compute the value of a call based on the following formula (which seems right) :
c = [ pi c+ + (1-pi) c- ]/e^r <=> c = e^(-r) * (pi c+) where c+ = S_t - x = S u - K
=> c = e^(-r) * pi * (S u - K) <=> c = e^(-r) pi S u - e^(-r) pi K <=> c = S_o N(d1) - K e^(-r) N(d2) with N(d1) = e^(-r) pi u and N(d2) = pi.

But in other materials, I read that S_o (stock price at initiation) should be brought to the future then the strike price should be subtracted and finally, we should compute the present value to get the PV of the call, ie : (S_o * e^r - K)/e^r = So - K*e^(-r). Afterwards, we should weight the S_o by N(d1) and K e^(-r) by N(d2) to get the PV of the call.
=> S_o N(d1) - K e^(-r) N(d2). Therefore, I am a bit confused with the e^(-r) factor. The 2 ways of achieving the formulas are different. Which one is correct?
Besides, it is said that N(d1) is the expected value of the stock price given its above exercise price for call so it should be normal that we discount the N(d1) probability?

With the Black model to price value of call for futures contract, I observe :
c = (F_0(T) N(d1) - X N(d2)) * e^(-rT) (Formula 1)
The idea here is that F_0(T) represents the price in the future so in the future, we just do F_0(T) - strike price to compute the call value and then brought back to compute PV ?
=> [F_o(T) - X]/e^(rT) = ?

I do not know when we need to apply this factor e^(r) to go into the future and when the e^(-r) to disount back.

Huge thank you in advance for your help

Up ! Please some help would be really valuable. Thank you for your time

Please post a screen shot of those formulae from the curriculum or else write them using MathJax. They’re a pain in the neck to decipher as written.