दिलचस्प पोस्ट
क्या सी # में जावा की तरह स्ट्रिंग टोकनेजर है? बिट्युलर ऑपरेटरों का उपयोग करके दो पूर्णांक का गुणन आप जावास्क्रिप्ट में 1 दशमलव स्थान पर कैसे गोल करते हैं? क्या स्पष्ट टाइमआउट और साफ अंतराल एक ही है? स्ट्रिंग (बाइट सरणी) में पूर्णांक की सूची – अजगर WCF सेवा अनुबंध इंटरफ़ेस के विभिन्न रूप प्रति पंक्ति एक पंक्ति का चयन करके डेटा फ़्रेम को संक्षिप्त करना अपाचे दूसरे पोर्ट पर रिडायरेक्ट एंड्रॉइड में यूएसबी डिबगिंग कैसे सक्षम करें? क्या आप जावास्क्रिप्ट के माध्यम से एक स्थानीय लोकल आईपी पता प्राप्त कर सकते हैं? एंड्रॉइड डिवाइस पर सॉफ़्टवेयर कीबोर्ड दृश्यमान है, तो मैं यह कैसे पता लगाऊँ? इसके साथ समस्या: घातक त्रुटि: ऑपरेटर में स्ट्रिंग के लिए समर्थित नहीं है रेज़र व्यू इंजन: एक अभिव्यक्ति के पेड़ में एक गतिशील ऑपरेशन नहीं हो सकता है मेरी WCF सेवा के लिए SSL सक्षम करें एक्सकोड 4 का कहना है कि "लक्षित उपकरण पर समाप्त हो रहे <my app>" – कुछ नहीं होता है

मैं एक ही हिल छवि को कई बार कैसे आकर्षित करूं?

हैलो, मैं एक मंचर गेम बना रहा हूं और जब आप स्पेस दबाते हैं तो चरित्र स्क्रीन पर चलता है एक आग का गोला गोली मारता है, लेकिन जब आप अंतरिक्ष फिर से दबाते हैं, तो फिर से फायरबॉल्स के निर्देशांक को खिलाड़ी के निर्देशांक में वापस सेट किया जाता है, जो कि एक और फायरबॉल को खींचने की बजाय जो मुझे चाहिए।

import java.awt.*; import javax.swing.*; public class Fire extends JPanel{ Image fireball; private int x=155000,y=155000; Player player = new Player(); public void paint(Graphics g){ g.drawImage(fireball, x, y, null); } public Fire(){ } public void update(){ fireball = new ImageIcon("C:\\Users\\steven.greens10\\Desktop\\Programs\\Raw Java\\Platform\\res\\fireball.png").getImage(); x+=5; if(x > 640){ x=155000; } } public void shoot(Player p){ x = p.getX(); y = p.getY(); repaint(); } } 

Solutions Collecting From Web of "मैं एक ही हिल छवि को कई बार कैसे आकर्षित करूं?"

@ केविन वॉकमेन सही हैं अग्निबाजों को पकड़ने के लिए आपको किसी प्रकार की डेटा संरचना की आवश्यकता है नीचे दिए गए उदाहरण में मैंने Fireball की एक List का इस्तेमाल किया

 List<Fireball> fireBalls; ... private class Fireball { Image fireball; int x = 150; int y = 125; public Fireball(Image image) { fireball = image; } public void drawFireball(Graphics g) { g.drawImage(fireball, x, y, 50, 50, null); } } 

उन्हें पेंट करने के लिए, मैं सिर्फ उनके माध्यम से पुनरावृत्त। उन्हें आगे बढ़ने के लिए, मैं बस टाइमर में एक्स मान को बढ़ाता हूं और फिर से रंगना करता हूं

 @Override protected void paintComponent(Graphics g) { super.paintComponent(g); ... for (Fireball ball : fireBalls) { ball.drawFireball(g); } } 

यहां छवि विवरण दर्ज करें

यहाँ पूरा कोड है

 import java.awt.*; import java.awt.event.*; import java.awt.image.BufferedImage; import java.io.IOException; import java.net.URL; import java.util.*; import java.util.List; import java.util.logging.*; import javax.imageio.ImageIO; import javax.swing.*; import javax.swing.Timer; public class WannaBeStreetFighter extends JPanel { private static final int D_W = 700; private static final int D_H = 250; private static final int X_INC = 10; List<Fireball> fireBalls; BufferedImage ryu; BufferedImage fireball; BufferedImage background; public WannaBeStreetFighter() { try { ryu = ImageIO.read(new URL("http://www.sirlin.net/storage/street_fighter/ryu_hadoken_pose.png?__SQUARESPACE_CACHEVERSION=1226531909576")); background = ImageIO.read(new URL("http://fightingstreet.com/folders/variousinfofolder/ehondasbath/hondasfz3stage.gif")); fireball = ImageIO.read(new URL("http://farm6.staticflickr.com/5480/12297371495_ec19ded155_o.png")); } catch (IOException ex) { Logger.getLogger(WannaBeStreetFighter.class.getName()).log(Level.SEVERE, null, ex); } fireBalls = new LinkedList<>(); Timer timer = new Timer(40, new ActionListener() { @Override public void actionPerformed(ActionEvent e) { Iterator<Fireball> it = fireBalls.iterator(); while (it.hasNext()) { Fireball ball = it.next(); if (ball.x > D_W) { it.remove(); System.out.println(fireBalls.size()); } else { ball.x += X_INC; repaint(); } } } }); timer.start(); InputMap inputMap = getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW); inputMap.put(KeyStroke.getKeyStroke("SPACE"), "hadouken"); getActionMap().put("hadouken", new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { fireBalls.add(new Fireball(fireball)); } }); } @Override protected void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(background, 0, 0, D_W, D_H, this); g.drawImage(ryu, 50, 125, 150, 115, this); for (Fireball ball : fireBalls) { ball.drawFireball(g); } } @Override public Dimension getPreferredSize() { return new Dimension(D_W, D_H); } private class Fireball { Image fireball; int x = 150; int y = 125; public Fireball(Image image) { fireball = image; } public void drawFireball(Graphics g) { g.drawImage(fireball, x, y, 75, 50, null); } } public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { JFrame frame = new JFrame("Best Street Fighter ever"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(new WannaBeStreetFighter()); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); } }); } } 

क्या आप Image का दूसरा उदाहरण बनाने का प्रयास कर रहे हैं? उदाहरण के लिए:

 Image fireball, firball2; 

अब आपके पास दो Image ऑब्जेक्ट हैं इसलिए जब आप g.dawImage(...) :

 public void paint(Graphics g){ g.drawImage(fireball, x, y, null); g.drawImage(fireball2, x+10, y+10, null);//just draw this other Image } 

आप कई छवियों को चित्रित कर सकते हैं। साथ ही, मैंने x और y स्थिति बदल दी, इसलिए दो Image ऑब्जेक्ट्स ओवरलैप नहीं हुए।

अब अगर आप Image ऑब्जेक्ट्स का एक गुच्छा चाहते हैं, तो Image ऑब्जेक्ट्स का एक ArrayList का उपयोग करें:

 ArrayList<Image> fireballs = new ArrayList<Image>(); 

यहां ArrayList के बारे में और पढ़ें।