Thank you for coming back to the course. In this lesson, we are going to talk about how we can pass around the objects so that a hunter can hunt the rich in our game. First we have to define our class which and these other pass, we use the initialization function. The initialization function which takes three parameters, the first of course itself, and then it's the name and the level. And then we assign the pass in parameter name and therefore, to self dot name and self thought level respectively. And then we will create a representation function df r GPR.
And it takes one parameter self and we will pray now, the name and LFO of the auction The way to do is is to use the format function together with the curry banquette. This has been covered in our previous lesson. After that, we will define another function which craft attack this function will take one parameter which is the self and then it will return the random thought when int from one to 10 and then multiplied by its own level. So, this function is going to give out the attack value of the which Next, we are going to import the random package and then we define the cause Hunter. Similarly, we have to defy the initialization function for this hunter class. It will take three parameters, self name and the level And then we assign these parameters to the variables of the class.
Next, we are going to defy the representation function. Similarly, this representation function is going to return the name and the level of the hunter. So, we will be using the format function together with the curly brackets again. After that, we are going to defy our own function for the hunter costs, which is the attack function. This function is going to take two parameters, the self parameters and the which parameter. Now, the which is going to be an object that we are going to pass in.
So the hunter damage is going to be random when in Again from one to 10 multiply by the level of the hunter at the same time in this function will also get the witch damage by using the object which has been passing and then we trigger the function which cough underscore attack from the witch object. So look at it again the witch object is being passing and then we nephesh this object and call the witchcraft attack function and is safe the venue in which damage variable after we have got the hunter damage and which damage value we play now hunter attack and incur banquette and they use the form that function to pre now the hunter damage Similarly, we are going to clean now the witch attack value by using the format function and also the courier banquette with the witch damage value as the parameter and then we compare whether the hunter is causing a bigger damage or the which is causing a bigger damage if the hunter damage is bigger than the which damage we know that Hunter is more powerful.
So we pay now you defeated and then the name of the witch so basically it will tell you you have defeated the witch and then we'll return true otherwise the which is More powerful than the hunter. So the hunter can catch the witch. So we will play now a curry banquette went away and we will substitute the curry banquette with the name of the witch because we can't be fitter which so we return false. Now we are going to create a which object. We pass in the name, which is our first parameter and then level five as our second parameter. And then we create the hunter object with the name, Hunter and Neto five as well.
After we have the reach and the hunter, we call the hunter dot attack function. And we pass into which object as the parameter. Now, we see the result, which is the hunter has attack with a damage of 30 and a which has attack with a damage of 50 because the wage is more powerful, so the witch ran away and we saw is the force which means the hunter cannot catch the witch. Now, if we take a look at the whole function again, we can see that in the attack function, the first parameter itself is the hunter, the which parameter is the which object that we pass in. And then, for the hunter damage, we are using a random function to generate a random value and then multiplied by the self level the wish damage is causing the witch calf attack function from the witch object which is also getting a venom value from one to 10 and then multiply it by the level of the object and then we return that back.
So, this function is going to return a value and that will be stored in a week damage variable. After that, we pin out the value of the hunter damage. We also clean out the value of the witch damage. We then use the if statement to check the counter damage and which damage and pay now accordingly because the hunter damage is less than the which damage so before into the statement that means The which has one away and the function will return force. So you can see how these two objects in their work with each other by passing the object to another object. In our next lesson, we are going to talk about inheritance.
See you next time