We present a philosophically motivated framework for modelling moral agency. In addition to choosing strategies, agents in this framework choose among an appropriate exogenous set of moralities that depends on the context of the game. Further, agents can use mixed strategies to choose their degree of morality. We present two models to demonstrate the framework. In the first model, agents choose between empathy and selfishness while playing prisoner’s dilemma. In the second, agents choose between Kantian universalizing and selfishness while playing a public goods game. For both models, the degree of morality gets determined endogenously rather than assigned parametrically.