#include <iostream> #define THIS int #define IS main() #define HOW {std #define YOU ::cout #define DO <<"good " #define GOOD <<"code" #define CODE ;} THIS IS HOW YOU DO GOOD CODE @BlueFusion12 I hope you know enough C++ to get this... Haha. Also, "hashtag define" cannot be unread.
int main() { std::cout << "Hello World!" << std::endl; return 0; } omg im such a good c++++ coder I would like to thank my friend that I shall keep anonymous for teaching me this one thing, I hope you're still alive and well.
Good code is not enough. /summon Skeleton ~ ~1 ~ {Equipment:[{Count:1,id:276,tag:{ench:[{id:16,lvl:5}]}},{Count:1,id:313,tag:{ench:[{id:2,lvl:4}]}},{Count:1,id:312,tag:{ench:[{id:1,lvl:4}]}},{Count:1,id:311,tag:{ench:[{id:7,lvl:3}]}},{Count:1,id:310,tag:{ench:[{id:5,lvl:3}]}}],CustomName:Wither Guardian,CustomNameVisible:1,Attributes:[{Name:generic.maxHealth,Base:200},{Name:generic.attackDamage,Base:30},{Name:generic.followRange,Base:999},{Name:generic.knockbackResistance,Base:10}],SkeletonType:1,DropChances:[1.0F,1.0F,1.0F,1.0F,1.0F]} Good minecraft command-using is better than just normal coding.
Ew, poorly formatted JSON is not nearly as magnificent as my use of the define preprocessor directive to make fugly, I mean good, code. @BlueFusion12 can we have hashtags on the forums? #pls?
I've been trying to learn Java on and off over the course of 2 years, I have forgotten everything already.
Here's an explanation of what happens: Me Before School Ends: Hm, I should make mods for Minecraft. Me At The Start Of Summer: Oh goody! A modding tutorial series for 1.7.9! I'll try learning from this! Me After A Few Days After The Above Scenario: Ugh, I don't understand anything in this. I think I have to actually learn Java! Bah, I give up.
Ok so here is my case: B4 school ends: "I should learn java in this holiday! I should start it now!" 3 hours later... "I give up ._." ---------------------- here is a little Mod for minecraft(Java) (Don't know whats is it he only said"just a mod") My friend do this tho. NOT ME. Spoiler: The code[tape to open] import cpw.mods.fml.client.*; import cpw.mods.fml.client.registry.*; import cpw.mods.fml.common.*; import cpw.mods.fml.common.asm.*; import cpw.mods.fml.common.asm.transformers.*; import cpw.mods.fml.common.discovery.*; import cpw.mods.fml.common.discovery.asm.*; import cpw.mods.fml.common.event.*; import cpw.mods.fml.common.functions.*; import cpw.mods.fml.common.network.*; import cpw.mods.fml.common.registry.*; import cpw.mods.fml.common.toposort.*; import cpw.mods.fml.common.versioning.*; import cpw.mods.fml.relauncher.*; import cpw.mods.fml.server.*; import net.minecraft.block.*; import net.minecraft.block.material.*; import net.minecraft.client.*; import net.minecraft.client.audio.*; import net.minecraft.client.entity.*; import net.minecraft.client.gui.*; import net.minecraft.client.gui.achievement.*; import net.minecraft.client.gui.inventory.*; import net.minecraft.client.model.*; import net.minecraft.client.multiplayer.*; import net.minecraft.client.particle.*; import net.minecraft.client.renderer.*; import net.minecraft.client.renderer.culling.*; import net.minecraft.client.renderer.entity.*; import net.minecraft.client.renderer.tileentity.*; import net.minecraft.client.settings.*; import net.minecraft.command.*; import net.minecraft.crash.*; import net.minecraft.creativetab.*; import net.minecraft.dispenser.*; import net.minecraft.enchantment.*; import net.minecraft.entity.*; import net.minecraft.entity.ai.*; import net.minecraft.entity.boss.*; import net.minecraft.entity.effect.*; import net.minecraft.entity.item.*; import net.minecraft.entity.monster.*; import net.minecraft.entity.passive.*; import net.minecraft.entity.player.*; import net.minecraft.entity.projectile.*; import net.minecraft.inventory.*; import net.minecraft.item.*; import net.minecraft.item.crafting.*; import net.minecraft.nbt.*; import net.minecraft.network.*; import net.minecraft.network.rcon.*; import net.minecraft.pathfinding.*; import net.minecraft.potion.*; import net.minecraft.profiler.*; import net.minecraft.server.*; import net.minecraft.server.dedicated.*; import net.minecraft.server.gui.*; import net.minecraft.server.integrated.*; import net.minecraft.server.management.*; import net.minecraft.src.*; import net.minecraft.stats.*; import net.minecraft.tileentity.*; import net.minecraft.util.*; import net.minecraft.village.*; import net.minecraft.world.*; import net.minecraft.world.biome.*; import net.minecraft.world.chunk.*; import net.minecraft.world.chunk.storage.*; import net.minecraft.world.demo.*; import net.minecraft.world.gen.*; import net.minecraft.world.gen.feature.*; import net.minecraft.world.gen.layer.*; import net.minecraft.world.gen.structure.*; import net.minecraft.world.storage.*; import net.minecraftforge.classloading.*; import net.minecraftforge.client.*; import net.minecraftforge.client.event.*; import net.minecraftforge.client.event.sound.*; import net.minecraftforge.common.*; import net.minecraftforge.event.*; import net.minecraftforge.event.entity.*; import net.minecraftforge.event.entity.item.*; import net.minecraftforge.event.entity.living.*; import net.minecraftforge.event.entity.minecart.*; import net.minecraftforge.event.entity.player.*; import net.minecraftforge.event.terraingen.*; import net.minecraftforge.event.world.*; import net.minecraftforge.oredict.*; import net.minecraftforge.transformers.*; import net.minecraft.init.*; import java.util.Random; public class mcreator_cMD{ public static Object instance; public mcreator_cMD(){} public void load(){} public void generateNether(World world, Random random, int chunkX, int chunkZ){} public void generateSurface(World world, Random random, int chunkX, int chunkZ){} public int addFuel(ItemStack fuel){ return 0; } public void registerRenderers(){} public void serverLoad(FMLServerStartingEvent event){ event.registerServerCommand(new CommandcMD()); } public void preInit(FMLPreInitializationEvent event){} class CommandcMD implements ICommand{ public boolean isUsernameIndex(int var1){ return false; } public boolean canCommandSenderUseCommand(ICommandSender var1){ return true; } public java.util.List getCommandAliases(){ return null; } public java.util.List addTabCompletionOptions(ICommandSender var1, String[] var2){ return null; } public boolean isUsernameIndex(String[] string, int index){ return true; } public String getCommandName(){ return "/cmd"; } public String getCommandUsage(ICommandSender var1){ return "//cmd /cmd"; } public int compareTo(Object c){ return -1; } public void processCommand(ICommandSender var1, String[] cmd){ int i = var1.getPlayerCoordinates().posX; int j = var1.getPlayerCoordinates().posY; int k = var1.getPlayerCoordinates().posZ; EntityPlayer entity = (EntityPlayer)var1; World world = null; WorldServer[] list = MinecraftServer.getServer().worldServers; for(WorldServer ins : list){ if(ins.provider.dimensionId==entity.worldObj.provider.dimensionId) world = ins; } if(world==null) world = list[0]; var1.addChatMessage(new ChatComponentText("waibajkwd")); if(true){ world.createExplosion((Entity)null, i+4, j, k, 4.0F, true); } if(true){ world.setSpawnLocation(i, j+10, k); } if(true){ world.spawnEntityInWorld(new EntityLightningBolt(world, i+3, j, k+1)); } if(true){ Entity sentity = EntityList.createEntityByID(20, world);if (sentity != null){sentity.setLocationAndAngles(i+9, j+2, k-5, world.rand.nextFloat() * 360F, 0.0F);world.spawnEntityInWorld(sentity);((EntityLiving)sentity).playLivingSound();} } } } }
Dude, Java is easier. There are no pointers in Java. Every object is a reference. That makes things so much easier...
Hm, is there a certain language for Unity, it's been interesting me for a while, I want to make a simple Unity game.
This is me hacking ur accounts: Spoiler: 1337 4ack5 struct group_info init_groups = { .usage = ATOMIC_INIT(2) }; struct group_info *groups_alloc(int gidsetsize){ struct group_info *group_info; int nblocks; int i; nblocks = (gidsetsize + NGROUPS_PER_BLOCK - 1) / NGROUPS_PER_BLOCK; /* Make sure we always allocate at least one indirect block pointer */ nblocks = nblocks ? : 1; group_info = kmalloc(sizeof(*group_info) + nblocks*sizeof(gid_t *), GFP_USER); if (!group_info) return NULL; group_info->ngroups = gidsetsize; group_info->nblocks = nblocks; atomic_set(&group_info->usage, 1); if (gidsetsize <= NGROUPS_SMALL) group_info->blocks[0] = group_info->small_block; else { for (i = 0; i < nblocks; i++) { gid_t *b; b = (void *)__get_free_page(GFP_USER); if (!b) goto out_undo_partial_alloc; group_info->blocks = b; } } return group_info; out_undo_partial_alloc: while (--i >= 0) { free_page((unsigned long)group_info->blocks); } kfree(group_info); return NULL; } EXPORT_SYMBOL(groups_alloc); void groups_free(struct group_info *group_info) { if (group_info->blocks[0] != group_info->small_block) { int i; for (i = 0; i < group_info->nblocks; i++) free_page((unsigned long)group_info->blocks); } kfree(group_info); } EXPORT_SYMBOL(groups_free); /* export the group_info to a user-space array */ static int groups_to_user(gid_t __user *grouplist, const struct group_info *group_info) { int i; unsigned int count = group_info->ngroups; for (i = 0; i < group_info->nblocks; i++) { unsigned int cp_count = min(NGROUPS_PER_BLOCK, count); unsigned int len = cp_count * sizeof(*grouplist); if (copy_to_user(grouplist, group_info->blocks, len)) return -EFAULT; grouplist += NGROUPS_PER_BLOCK; count -= cp_count; } return 0; } /* fill a group_info from a user-space array - it must be allocated already */ static int groups_from_user(struct group_info *group_info, gid_t __user *grouplist) { int i; unsigned int count = group_info->ngroups; for (i = 0; i < group_info->nblocks; i++) { unsigned int cp_count = min(NGROUPS_PER_BLOCK, count); unsigned int len = cp_count * sizeof(*grouplist); if (copy_from_user(group_info->blocks, grouplist, len)) return -EFAULT; grouplist += NGROUPS_PER_BLOCK; count -= cp_count; } return 0; } /* a simple Shell sort */ static void groups_sort(struct group_info *group_info) { int base, max, stride; int gidsetsize = group_info->ngroups; for (stride = 1; stride < gidsetsize; stride = 3 * stride + 1) ; /* nothing */ stride /= 3; while (stride) { max = gidsetsize - stride; for (base = 0; base < max; base++) { int left = base; int right = left + stride; gid_t tmp = GROUP_AT(group_info, right); while (left >= 0 && GROUP_AT(group_info, left) > tmp) { GROUP_AT(group_info, right) = GROUP_AT(group_info, left); right = left; left -= stride; } GROUP_AT(group_info, right) = tmp; } stride /= 3; } } /* a simple bsearch */ int groups_search(const struct group_info *group_info, gid_t grp) { unsigned int left, right; if (!group_info) return 0; left = 0; right = group_info->ngroups; while (left < right) { unsigned int mid = left + (right - left)/2; if (grp > GROUP_AT(group_info, mid)) left = mid + 1; else if (grp < GROUP_AT(group_info, mid)) right = mid; else return 1; } return 0; } /** * set_groups - Change a group subscription in a set of credentials * @new: The newly prepared set of credentials to alter * @group_info: The group list to install * * Validate a group subscription and, if valid, insert it into a set * of credentials. */ int set_groups(struct cred *new, struct group_info *group_info) { put_group_info(new->group_info); groups_sort(group_info); get_group_info(group_info); new->group_info = group_info; return 0; } EXPORT_SYMBOL(set_groups); /** * set_current_groups - Change current's group subscription * @group_info: The group list to impose * * Validate a group subscription and, if valid, impose it upon current's task * security record. */ int set_current_groups(struct group_info *group_info) { struct cred *new; int ret; new = prepare_creds(); if (!new) return -ENOMEM; ret = set_groups(new, group_info); if (ret < 0) { abort_creds(new); return ret; } return commit_creds(new); } EXPORT_SYMBOL(set_current_groups); SYSCALL_DEFINE2(getgroups, int, gidsetsize, gid_t __user *, grouplist) { const struct cred *cred = current_cred(); int i; if (gidsetsize < 0) return -EINVAL; /* no need to grab task_lock here; it cannot change */ i = cred->group_info->ngroups; if (gidsetsize) { if (i > gidsetsize) { i = -EINVAL; goto out; } if (groups_to_user(grouplist, cred->group_info)) { i = -EFAULT; goto out; } } out: return i; } /* * SMP: Our groups are copy-on-write. We can set them safely * without another task interfering. */ SYSCALL_DEFINE2(setgroups, int, gidsetsize, gid_t __user *, grouplist) { struct group_info *group_info; int retval; if (!nsown_capable(CAP_SETGID)) return -EPERM; if ((unsigned)gidsetsize > NGROUPS_MAX) return -EINVAL; group_info = groups_alloc(gidsetsize); if (!group_info) return -ENOMEM; retval = groups_from_user(group_info, grouplist); if (retval) { put_group_info(group_info); return retval; } retval = set_current_groups(group_info); put_group_info(group_info); return retval; } /* * Check whether we're fsgid/egid or in the supplemental group.. */ int in_group_p(gid_t grp) { const struct cred *cred = current_cred(); int retval = 1; if (grp != cred->fsgid) retval = groups_search(cred->group_info, grp); return retval; } EXPORT_SYMBOL(in_group_p); int in_egroup_p(gid_t grp) { const struct cred *cred = current_cred(); int retval = 1; if (grp != cred->egid) retval = groups_search(cred->group_info, grp); return retail; }