Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Cocos2d Game Development Blueprints
Cocos2d Game Development Blueprints

Cocos2d Game Development Blueprints: Design, develop, and create your own successful iOS games using the Cocos2d game engine

Arrow left icon
Profile Icon Jorge Jordán
Arrow right icon
S$74.99
Full star icon Full star icon Full star icon Full star icon Full star icon 5 (2 Ratings)
Paperback Jan 2015 440 pages 1st Edition
eBook
S$12.99 S$59.99
Paperback
S$74.99
Subscription
Free Trial
Arrow left icon
Profile Icon Jorge Jordán
Arrow right icon
S$74.99
Full star icon Full star icon Full star icon Full star icon Full star icon 5 (2 Ratings)
Paperback Jan 2015 440 pages 1st Edition
eBook
S$12.99 S$59.99
Paperback
S$74.99
Subscription
Free Trial
eBook
S$12.99 S$59.99
Paperback
S$74.99
Subscription
Free Trial

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

Cocos2d Game Development Blueprints

Chapter 2. Explosions and UFOs

One of the most interesting characteristics in iOS devices is the accelerometer, thanks to which you can, among other functionalities, control the movement of the main character of a game without needing to touch the screen. In this chapter, you will learn how to take advantage of this feature and mix it with particles such as explosions and fire to develop a classic shoot 'em up game like 1942, but in this case, the enemies will be UFOs. As you will need some spaceships, you will learn how to create them by extending the CCSprite class and I will also teach you how to implement the parallax effect to create an illusion of depth in a 2D game. To conclude, I will introduce you to geometric primitives such as lines, squares, and circles and how to draw them.

Things you will learn in this chapter include:

  • How to use the accelerometer
  • How to load and set up a particle system
  • How to create sprites that extend CCSprite
  • How to implement the parallax effect...

Handling the accelerometer input

Since the apparition of the first iPhone generation, mobile devices are equipped with a 3-axis accelerometer (x, y, and z) to detect orientation changes and it has modified the course of handheld games. It allows players to interact with games without the need to touch the screen, and it allows developers to create new subgenres of games too.

Throughout this chapter, you will mix this hardware feature with a classic arcades genre to develop the following game: the planet Earth has been attacked by an army of UFOs whose sole purpose is to wipe out all of mankind, but fortunately, a mad scientist equipped with some of his inventions is brave enough to defend us.

To control the movements of Dr. Nicholas Fringe, our mad scientist, you will take advantage of the accelerometer, but first of all you need a clean Xcode project. As you learned in the previous chapter how to create a new project and how to get it ready to start developing, we will skip this step, so...

Implementing the parallax effect in Cocos2d

The parallax effect is a scrolling technique used in 2D games that simulates depth and displacement by moving the foreground layers faster than background layers. This technique was developed initially to be used in traditional animation in the 1930s and was first used in computer games in the early 80s.

This effect consists of making our brain think that we are looking at displacement similar to what happens when we are traveling on a train: we can see the trees near the railway passing fast, but if we look to the houses placed further away, they pass a little slower, and if you look at the mountains in the background, they look almost immobile. If we place our scientist over a ground layer that will displace slowly and above this layer we scroll a clouds layer from the top to the bottom of the screen, our brain will think that Dr. Fringe is flying over the clouds thanks to his amazing backpack-reactor.

CCParallaxNode

As the parallax effect is a...

Particle systems

I always say that video games are comparable to films, differences aside, because they tell stories, have an argument, different scenes, a soundtrack, and special effects. Yes, you read correctly, you can add special effects, or particle systems as they're commonly known in computer games, to your games.

In computer graphics, this technique is commonly used because it simulates several natural and meteorological phenomena such as snow, sun, rain, fire, meteors, and smoke. It also simulates other special effects such as spirals, explosions, fireworks, and other lighting effects by using a large amount of small images. If you think about natural phenomena, like rain for example, it is composed of hundreds of water droplets and so that's what we need to replicate if we want to simulate a particle system in Cocos2d.

You might be thinking that this task must be hard and offers little possibilities, but in this section, you will learn to create and customize your own...

Extending CCSprite

Dr. Nicholas Fringe's enemies are an army of UFOs controlled by very intelligent extraterrestrial beings trying to wipe out all of mankind. That's why we're going to create them as a separate class that will derive from CCSprite, where we will define its evolved behavior.

Some developers prefer to derive this kind of class from CCNode and include a CCSprite instance as it offers more potential, but for the moment we are going to keep it simple and just extend CCSprite.

First of all, let's create the new class:

  1. Right-click on the Classes group in the project navigator and select New File….
  2. Click on iOS | cocos2d v3.x and choose to create the new file from the CCNode class template.
  3. Type CCSprite in the available field and click on Next.
  4. Call the file as UFO and be sure that the Classes folder is selected before clicking on Create.

Then replace the contents of UFO.h with the following block of code:

#import <Foundation/Foundation.h>
#import &quot...

2-star challenge – create explosions

Now that we are able to detect when a UFO is destroyed, it would be more realistic to make them explode, and I think you're ready to develop this by yourself.

Create one explosion whenever a spaceship is destroyed by using the file explosion.png that you will find in the Resources folder.

The solution

You will need to go back a few pages to achieve this challenge because in this case, we're going to create a CCParticleSystemModeRadius particle.

First of all, add explosion.png to the project and then add the following lines inside the method detectCollisions, after [_ufosToRemove addObject:ufo];:

CCParticleExplosion *explosion = [CCParticleExplosion node];
    explosion.texture = [CCTexture textureWithFile:@"explosion.png"];
         explosion.emitterMode = CCParticleSystemModeRadius;
         explosion.startSize = 100.0;
         explosion.startRadius = 20.0;
         explosion.endSize = 1.0;
         explosion.endRadius = 100.0...

Drawing and coloring

Usually, you will be working with sprites, nodes, and other high-level objects, but maybe sometimes you will want to draw some geometric primitives such as lines, circles, or squares. In our case, we're going to use them to represent our scientist's life bar.

Fortunately, Cocos2d allows us to perform these tasks easily by using any of these three options:

  • The draw method: This CCNode class method is the one you should override in your classes derived from CCNode to customize drawing your nodes. It's important here not to call [super draw] or you will face unexpected behavior.
  • The visit method: This CCNode class method gives you more control as it calls the draw method of the node and its children in the order they were added to it, taking into account the specified z-orders.
  • CCDrawNode: This class, derived from CCNode, is the one that gives you full control over the primitives because they are treated as nodes themselves.

The draw method presents a problem...

Handling the accelerometer input


Since the apparition of the first iPhone generation, mobile devices are equipped with a 3-axis accelerometer (x, y, and z) to detect orientation changes and it has modified the course of handheld games. It allows players to interact with games without the need to touch the screen, and it allows developers to create new subgenres of games too.

Throughout this chapter, you will mix this hardware feature with a classic arcades genre to develop the following game: the planet Earth has been attacked by an army of UFOs whose sole purpose is to wipe out all of mankind, but fortunately, a mad scientist equipped with some of his inventions is brave enough to defend us.

To control the movements of Dr. Nicholas Fringe, our mad scientist, you will take advantage of the accelerometer, but first of all you need a clean Xcode project. As you learned in the previous chapter how to create a new project and how to get it ready to start developing, we will skip this step, so...

Implementing the parallax effect in Cocos2d


The parallax effect is a scrolling technique used in 2D games that simulates depth and displacement by moving the foreground layers faster than background layers. This technique was developed initially to be used in traditional animation in the 1930s and was first used in computer games in the early 80s.

This effect consists of making our brain think that we are looking at displacement similar to what happens when we are traveling on a train: we can see the trees near the railway passing fast, but if we look to the houses placed further away, they pass a little slower, and if you look at the mountains in the background, they look almost immobile. If we place our scientist over a ground layer that will displace slowly and above this layer we scroll a clouds layer from the top to the bottom of the screen, our brain will think that Dr. Fringe is flying over the clouds thanks to his amazing backpack-reactor.

CCParallaxNode

As the parallax effect is a...

Left arrow icon Right arrow icon

Description

Whether you are a passionate gamer, like developing, or are just curious about game development, this book is for you. The book has been written to teach 2D game development to app developers and to teach Objective-C to game developers, as learning Cocos2d is the perfect step for both roles.

Who is this book for?

Whether you are a passionate gamer, like developing, or are just curious about game development, this book is for you. The book has been written to teach 2D game development to app developers and to teach Objective-C to game developers, as learning Cocos2d is the perfect step for both roles.

What you will learn

  • Load and control sprites, labels, sounds, and geometrical primitives efficiently to build the core of a game
  • Simulate movement by implementing the parallax effect and running animations
  • Implement turnbased game logic including Game Center
  • Create both iPadonly and universal versions of your games
  • Control your game using touches, an accelerometer, or a virtual game pad
  • Build menus and tutorials and define some artificial intelligence to nonplayed characters
Estimated delivery fee Deliver to Singapore

Standard delivery 10 - 13 business days

S$11.95

Premium delivery 5 - 8 business days

S$54.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jan 30, 2015
Length: 440 pages
Edition : 1st
Language : English
ISBN-13 : 9781783987887
Languages :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to Singapore

Standard delivery 10 - 13 business days

S$11.95

Premium delivery 5 - 8 business days

S$54.95
(Includes tracking information)

Product Details

Publication date : Jan 30, 2015
Length: 440 pages
Edition : 1st
Language : English
ISBN-13 : 9781783987887
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just S$6 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just S$6 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total S$ 179.97
Cocos2d Game Development Essentials
S$44.99
Learning iPhone Game Development with Cocos2D 3.0
S$59.99
Cocos2d Game Development Blueprints
S$74.99
Total S$ 179.97 Stars icon
Banner background image

Table of Contents

9 Chapters
1. Sprites, Sounds, and Collisions Chevron down icon Chevron up icon
2. Explosions and UFOs Chevron down icon Chevron up icon
3. Your First Online Game Chevron down icon Chevron up icon
4. Beat All Your Enemies Up Chevron down icon Chevron up icon
5. Scenes at the Highest Level Chevron down icon Chevron up icon
6. Physics Behavior Chevron down icon Chevron up icon
7. Jump and Run Chevron down icon Chevron up icon
8. Defend the Tower Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Full star icon 5
(2 Ratings)
5 star 100%
4 star 0%
3 star 0%
2 star 0%
1 star 0%
John Preston Cua Mar 22, 2015
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This is the best Cocos2d Book I’ve worked through so far…This book (Cocos2d Game Development Blueprints) guides the reader in developing 7 different types of games:1.) Chapter 2’s “Explosions and UFOs” - A Game that uses accelerometer inputs to manipulate the movement of the player in the game. In this chapter the reader not only learns how to use the accelerometer of the device in one’s game for the actual left right movement of the player but also how to use the technique of parallax scrolling to give the ILLUSION of forward movement of the player. Other important learning points in this chapter are: a.) How to use Particle Systems for Explosion Animation b.) How to use draw Primitive Shapes2.) Chapter 3’s Online Game - The best part of this chapter for me is the working sample code provided that illustrates how to develop a turn-based card game. After working through this chapter you will most likely have a good or at least better idea on how to implement a turn-based online game using Apple’s Game Center. As a side note, most of the Cocos2d books I’ve worked through does not have a chapter on Game Centre and how to develop a turn-based game. So this is one of the more special points of this book.3.) Chapter 4’s “Beat all Your Enemies Up” Game - If you are like me, who has spent a good amount of your childhood time playing BEAT’EM UP games like DOUBLE DRAGON and GOLDEN AXE during the late 80s and early 90s, you may be very glad to know that after working through this chapter you will have the foundation and a STARTING TEMPLATE to work on to create your own BEAT’EM UP GAME. YEHEY!!4.) Chapter 5’s Math Game - This chapter’s GAME TEMPLATE and sample code is very suitable for educational game apps and for creating the SETTINGS screen of any game…very useful but didn’t get5.) Chapter 6’s Snooker Game - This chapter is all about using the CHIPMUNK PHYSICS ENGINE. The sample game in this chapter is a SNOOKER GAME and NOT ANGRY BIRDS…and so don’t expect to get a ANGRY BIRDS GAME TEMPLATE/BLUEPRINT from this chapter, but EXPECT TO LEARN HOW TO USE THE CHIPMUNK PHYSICS ENGINE in your game.6.) Chapter 7’s Jump and Run - This chapter is for all of the MARIO BROTHERS fans that are now Game Developer Aspirants as this chapter shows how to develop a PLATFORM Game like Mario Brothers.7.) Chapter 8’s Defend the Tower - This chapter discusses the development of a Tower Defence Game. For me the most special part of this chapter is its discussion on how to implement the path finding algorithm for the attackers. In other words, this chapter teaches the reader how to make the objects in one’s game move within the game through following a predefined path that you set. This one special knowledge contained in this chapter is something I appreciate a lot as I have not found this knowledge in any of the other Cocos2d books I’ve read except for one that is already totally outdated.In short, I highly recommend this book to anyone who would like to learn to use Cocos2d to create 2D games as this book attempts to give the reader the knowledge on how to create 7 different types of games and it does a fairly good job at that. Also, there are 2 things that set this book apart from most other Cocos2d books (Note: Read my point 2 and 7 above to find out what these are).As of writing this review (March 22, 2015), the contents of this book is still relevant to the current version of Cocos2d-Swift. If you are reading this book quite a while later than March 22, 2015, please ensure that the book’s Cocos2d’s MAJOR version is still applicable to the Cocos2d version you will be using otherwise you may just end up buying a book that is not the most suitable for the tool you will be using. I don’t think booksellers offer a refund for mistakenly buying a outdated book as well.…Below is a copy and paste from the book for people who want to make sure:“In this book, we work with the latest Xcode version (5.1.1 at the time of writing), Cocos2d v3.0.0, and iOS7. “It is also worth noting that the book came out Jan 30 2015.
Amazon Verified review Amazon
Roger Pingleton May 11, 2015
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Cocos2D is always evolving, so books tend to go out of date pretty quickly. Never the less, this is a great resource.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela