예제 #1
0
 void cmdCurePlayer(NetUser netuser, string command, string[] args)
 {
     if (!permission.UserHasPermission(netuser.playerClient.userID.ToString(), "advmetabolism.allowed"))
     {
         SendReply(netuser, GetMessage("NoPermissionCure", netuser.userID.ToString()));
         return;
     }
     else if (args.Length != 1)
     {
         var rootControllable = netuser.playerClient.rootControllable;
         if (!rootControllable)
         {
             return;
         }
         var rootCharacter = rootControllable.rootCharacter;
         if (!rootCharacter)
         {
             return;
         }
         Metabolism metabolism = rootControllable.GetComponent <Metabolism>();
         metabolism.AddCalories(3000);
         float radLevel = metabolism.GetRadLevel();
         metabolism.AddAntiRad(radLevel);
         FallDamage fallDamage = rootControllable.GetComponent <FallDamage>();
         fallDamage.ClearInjury();
         HumanBodyTakeDamage humanBodyTakeDamage = rootControllable.GetComponent <HumanBodyTakeDamage>();
         humanBodyTakeDamage.SetBleedingLevel(0);
         SendReply(netuser, GetMessage("CureSelf", netuser.userID.ToString()));
         return;
     }
     else
     {
         NetUser targetuser = rust.FindPlayer(args[0]);
         if (targetuser != null)
         {
             var rootControllable = netuser.playerClient.rootControllable;
             if (!rootControllable)
             {
                 return;
             }
             var rootCharacter = rootControllable.rootCharacter;
             if (!rootCharacter)
             {
                 return;
             }
             Metabolism metabolism = rootControllable.GetComponent <Metabolism>();
             metabolism.AddCalories(3000);
             float radLevel = metabolism.GetRadLevel();
             metabolism.AddAntiRad(radLevel);
             FallDamage fallDamage = rootControllable.GetComponent <FallDamage>();
             fallDamage.ClearInjury();
             HumanBodyTakeDamage humanBodyTakeDamage = rootControllable.GetComponent <HumanBodyTakeDamage>();
             humanBodyTakeDamage.SetBleedingLevel(0);
             SendReply(netuser, GetMessage("CureTargetReply", netuser.userID.ToString()) + targetuser.displayName);
             SendReply(targetuser, GetMessage("CureTargetMessage", netuser.userID.ToString()) + netuser.displayName);
         }
     }
 }
예제 #2
0
 void cmdFeedPlayer(NetUser netuser, string command, string[] args)
 {
     if (!permission.UserHasPermission(netuser.playerClient.userID.ToString(), "advmetabolism.allowed"))
     {
         SendReply(netuser, GetMessage("NoPermissionFeed", netuser.userID.ToString()));
     }
     else if (args.Length != 1)
     {
         var rootControllable = netuser.playerClient.rootControllable;
         if (!rootControllable)
         {
             return;
         }
         var rootCharacter = rootControllable.rootCharacter;
         if (!rootCharacter)
         {
             return;
         }
         Metabolism metabolism = rootControllable.GetComponent <Metabolism>();
         metabolism.AddCalories(3000);
         SendReply(netuser, GetMessage("FeedSelf", netuser.userID.ToString()));
     }
     else
     {
         NetUser targetuser = rust.FindPlayer(args[0]);
         if (targetuser != null)
         {
             var rootControllable = targetuser.playerClient.rootControllable;
             if (!rootControllable)
             {
                 return;
             }
             var rootCharacter = rootControllable.rootCharacter;
             if (!rootCharacter)
             {
                 return;
             }
             Metabolism metabolism = rootControllable.GetComponent <Metabolism>();
             metabolism.AddCalories(3000);
             SendReply(netuser, GetMessage("FeedTargetReply", netuser.userID.ToString()) + targetuser.displayName);
             SendReply(targetuser, GetMessage("FeedTargetMessage", netuser.userID.ToString()) + netuser.displayName);
         }
     }
 }